Stabilize multi-peer UI and fix container start API body
Release rolling / release (push) Successful in 8m25s
Release rolling / release (push) Successful in 8m25s
Keep the containers table scoped to the active peer with a merge store, restore the last active server on boot with a restoring screen, start containers without a Docker API body (v1.24+), and stop ⋮ menus from sticking to the viewport bottom after refreshes.
This commit is contained in:
+33
-22
@@ -266,6 +266,16 @@
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<!-- Boot: re-dialing saved peers (not the welcome empty-state) -->
|
||||
<div id="restoring-page" class="hidden" hidden aria-live="polite" aria-busy="true">
|
||||
<div class="restoring-spinner" role="status" aria-label="Restoring">
|
||||
<span class="spinner-border text-success" style="width: 2.5rem; height: 2.5rem;"></span>
|
||||
</div>
|
||||
<h1>Restoring connections</h1>
|
||||
<p class="welcome-lead">Reconnecting to your saved servers…</p>
|
||||
<p id="restoring-status" class="text-muted small mb-0">Starting…</p>
|
||||
</div>
|
||||
|
||||
<!-- First-connect checklist (shown once after successful connect) -->
|
||||
<div id="first-connect-checklist" class="first-connect-checklist hidden" role="dialog" aria-labelledby="first-connect-title">
|
||||
<div class="first-connect-card">
|
||||
@@ -3289,29 +3299,30 @@ services:
|
||||
</div>
|
||||
|
||||
<!-- Accordion for Advanced Settings -->
|
||||
<div class="accordion accordion-flush" id="deployAccordion">
|
||||
<!-- Networking -->
|
||||
<div class="accordion accordion-flush" id="tplDeployAccordion">
|
||||
<!-- Networking — unique collapse IDs so they don't fight deploy-view accordion -->
|
||||
<div class="accordion-item bg-dark border-secondary">
|
||||
<h2 class="accordion-header">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#networkingCollapse">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#tplNetworkingCollapse">
|
||||
<i class="fas fa-network-wired me-2"></i> Networking
|
||||
</button>
|
||||
</h2>
|
||||
<div id="networkingCollapse" class="accordion-collapse collapse" data-bs-parent="#deployAccordion">
|
||||
<div id="tplNetworkingCollapse" class="accordion-collapse collapse" data-bs-parent="#tplDeployAccordion">
|
||||
<div class="accordion-body">
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-6">
|
||||
<label for="deploy-network-mode" class="form-label">Network Mode</label>
|
||||
<select id="deploy-network-mode" class="form-select bg-dark text-white">
|
||||
<!-- Keep same field id pattern via name; id unique to avoid dual accordion targets -->
|
||||
<select id="tpl-deploy-network-mode" name="deploy-network-mode" class="form-select bg-dark text-white">
|
||||
<option value="bridge">Bridge</option>
|
||||
<option value="host">Host</option>
|
||||
<option value="none">None</option>
|
||||
<option value="container">Container</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-md-6" id="deploy-custom-network-container" style="display: none;">
|
||||
<label for="deploy-custom-network" class="form-label">Custom Network</label>
|
||||
<input type="text" id="deploy-custom-network" class="form-control bg-dark text-white" placeholder="network-name">
|
||||
<div class="col-md-6" id="tpl-deploy-custom-network-container" style="display: none;">
|
||||
<label for="tpl-deploy-custom-network" class="form-label">Custom Network</label>
|
||||
<input type="text" id="tpl-deploy-custom-network" class="form-control bg-dark text-white" placeholder="network-name">
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mb-3">
|
||||
@@ -3353,11 +3364,11 @@ services:
|
||||
<!-- Volumes & Storage -->
|
||||
<div class="accordion-item bg-dark border-secondary">
|
||||
<h2 class="accordion-header">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#volumesCollapse">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#tplVolumesCollapse">
|
||||
<i class="fas fa-hdd me-2"></i> Volumes & Storage
|
||||
</button>
|
||||
</h2>
|
||||
<div id="volumesCollapse" class="accordion-collapse collapse" data-bs-parent="#deployAccordion">
|
||||
<div id="tplVolumesCollapse" class="accordion-collapse collapse" data-bs-parent="#tplDeployAccordion">
|
||||
<div class="accordion-body">
|
||||
<div class="mb-3">
|
||||
<label class="form-label">Volume Mounts</label>
|
||||
@@ -3381,11 +3392,11 @@ services:
|
||||
<!-- Resources -->
|
||||
<div class="accordion-item bg-dark border-secondary">
|
||||
<h2 class="accordion-header">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#resourcesCollapse">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#tplResourcesCollapse">
|
||||
<i class="fas fa-server me-2"></i> Resources
|
||||
</button>
|
||||
</h2>
|
||||
<div id="resourcesCollapse" class="accordion-collapse collapse" data-bs-parent="#deployAccordion">
|
||||
<div id="tplResourcesCollapse" class="accordion-collapse collapse" data-bs-parent="#tplDeployAccordion">
|
||||
<div class="accordion-body">
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-4">
|
||||
@@ -3432,11 +3443,11 @@ services:
|
||||
<!-- Environment & Labels -->
|
||||
<div class="accordion-item bg-dark border-secondary">
|
||||
<h2 class="accordion-header">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#envLabelsCollapse">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#tplEnvLabelsCollapse">
|
||||
<i class="fas fa-tags me-2"></i> Environment & Labels
|
||||
</button>
|
||||
</h2>
|
||||
<div id="envLabelsCollapse" class="accordion-collapse collapse" data-bs-parent="#deployAccordion">
|
||||
<div id="tplEnvLabelsCollapse" class="accordion-collapse collapse" data-bs-parent="#tplDeployAccordion">
|
||||
<div class="accordion-body">
|
||||
<div class="mb-3">
|
||||
<label class="form-label">Environment Variables</label>
|
||||
@@ -3460,11 +3471,11 @@ services:
|
||||
<!-- Security -->
|
||||
<div class="accordion-item bg-dark border-secondary">
|
||||
<h2 class="accordion-header">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#securityCollapse">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#tplSecurityCollapse">
|
||||
<i class="fas fa-shield-alt me-2"></i> Security
|
||||
</button>
|
||||
</h2>
|
||||
<div id="securityCollapse" class="accordion-collapse collapse" data-bs-parent="#deployAccordion">
|
||||
<div id="tplSecurityCollapse" class="accordion-collapse collapse" data-bs-parent="#tplDeployAccordion">
|
||||
<div class="accordion-body">
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-6">
|
||||
@@ -3513,11 +3524,11 @@ services:
|
||||
<!-- Runtime & Behavior -->
|
||||
<div class="accordion-item bg-dark border-secondary">
|
||||
<h2 class="accordion-header">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#runtimeCollapse">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#tplRuntimeCollapse">
|
||||
<i class="fas fa-play-circle me-2"></i> Runtime & Behavior
|
||||
</button>
|
||||
</h2>
|
||||
<div id="runtimeCollapse" class="accordion-collapse collapse" data-bs-parent="#deployAccordion">
|
||||
<div id="tplRuntimeCollapse" class="accordion-collapse collapse" data-bs-parent="#tplDeployAccordion">
|
||||
<div class="accordion-body">
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-6">
|
||||
@@ -3575,11 +3586,11 @@ services:
|
||||
<!-- Health & Logging -->
|
||||
<div class="accordion-item bg-dark border-secondary">
|
||||
<h2 class="accordion-header">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#healthCollapse">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#tplHealthCollapse">
|
||||
<i class="fas fa-heartbeat me-2"></i> Health & Logging
|
||||
</button>
|
||||
</h2>
|
||||
<div id="healthCollapse" class="accordion-collapse collapse" data-bs-parent="#deployAccordion">
|
||||
<div id="tplHealthCollapse" class="accordion-collapse collapse" data-bs-parent="#tplDeployAccordion">
|
||||
<div class="accordion-body">
|
||||
<div class="mb-3">
|
||||
<label for="deploy-health-cmd" class="form-label">Health Check Command</label>
|
||||
@@ -3632,11 +3643,11 @@ services:
|
||||
<!-- Advanced -->
|
||||
<div class="accordion-item bg-dark border-secondary">
|
||||
<h2 class="accordion-header">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#advancedCollapse">
|
||||
<button class="accordion-button collapsed bg-dark text-white" type="button" data-bs-toggle="collapse" data-bs-target="#tplAdvancedCollapse">
|
||||
<i class="fas fa-cogs me-2"></i> Advanced
|
||||
</button>
|
||||
</h2>
|
||||
<div id="advancedCollapse" class="accordion-collapse collapse" data-bs-parent="#deployAccordion">
|
||||
<div id="tplAdvancedCollapse" class="accordion-collapse collapse" data-bs-parent="#tplDeployAccordion">
|
||||
<div class="accordion-body">
|
||||
<div class="mb-3">
|
||||
<label class="form-label">Sysctls</label>
|
||||
|
||||
Reference in New Issue
Block a user