Run compose like the terminal does, and follow changes made there (0.67.2)
StackPilot called `docker compose -p <folder> -f compose.yaml`, which is
not what `docker compose` typed in the stack's folder does. A
compose.override.yaml or a COMPOSE_FILE in .env applied in a terminal
and was dropped by the next Start in StackPilot, which recreated the
containers without it. A compose file's `name:` or a COMPOSE_PROJECT_NAME
in .env made the terminal's containers invisible: the stack showed as
stopped while running, and Start set up a second copy next to it.
Compose now runs in the stack's folder without -f, so it loads the same
files, and -p is the name compose itself picks there: COMPOSE_PROJECT_NAME
from .env, else the last `name:` among the compose files (${VAR} from
.env), else the folder name. A stack StackPilot already runs under its
folder name keeps that name while it has containers or volumes under it
and none under the declared one: switching would have brought it up
again on empty volumes. Backups record the project, and a restore takes
it from the files it has just put back.
Changes made outside StackPilot now reach every view:
- docker_watch_service reads Docker's events once for the backend. The
dashboard rollup (cached 25s) and the stats cache are stale as soon as
the event generation moves; the tiles followed a terminal `compose
stop` after 15-30s, now within a second.
- Image events re-read the local digests, so a `docker compose pull` in
a terminal clears the update badge instead of leaving it until the
next registry check (an hour by default).
- The browser catches up when its event socket reconnects; what changed
while it was down waited for the 60s poll.
- The stack detail carries a revision of the compose file and .env;
saving after they changed on disk is refused with 409 and the editor
offers to overwrite or to load the version on disk. A save used to
replace a terminal edit without a word.
- A stack whose folder is gone is flagged "folder missing" instead of
passing for an ordinary stopped stack.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Fx7gcuy8d6nPd95g43rGHu
This commit is contained in:
1 parent
d6cebb3371
commit
06234c1067
21 files changed
+811
-45
No files matched your search
@@ -13,6 +13,35 @@ as intuitive as Dockge, as capable as Portainer for Compose workflows.
|
||||
> (Auto-update) + Phase 23 (Secrets & configs) + Phase 24 (Design System v2)
|
||||
> complete.
|
||||
|
||||
## Upgrading to 0.67.2 — StackPilot and the terminal agree
|
||||
|
||||
StackPilot now runs `docker compose` the way it runs when typed in the stack's
|
||||
folder. Before, it called `docker compose -p <folder> -f compose.yaml`, and the
|
||||
two drifted apart:
|
||||
|
||||
- **Override files and `COMPOSE_FILE` apply.** A `compose.override.yaml` (or
|
||||
`docker-compose.override.yml`, or `COMPOSE_FILE=` in the stack's `.env`) took
|
||||
effect in a terminal and was dropped again by the next Start in StackPilot,
|
||||
which recreated the containers without it.
|
||||
- **The project name is compose's.** `COMPOSE_PROJECT_NAME` in `.env`, else the
|
||||
compose file's `name:`, else the folder name. A stack whose file says
|
||||
`name: immich` in a folder called `photos` showed as stopped while running,
|
||||
and Start set up a second copy. *Nothing to do for existing stacks:* one that
|
||||
StackPilot already runs under its folder name keeps that name for as long as
|
||||
it has containers or volumes under it — switching would have brought it up
|
||||
again next to the old one, on empty volumes.
|
||||
- **Changes made elsewhere show up at once.** The dashboard tiles were cached
|
||||
for 25 seconds and the update badge until the next registry check (an hour by
|
||||
default); both now follow Docker's events, so a stack stopped or an image
|
||||
pulled in a terminal is reflected within a second. After the live connection
|
||||
drops (a restart, a laptop asleep, a proxy) the pages catch up on reconnect
|
||||
instead of waiting for their slow poll.
|
||||
- **The editor will not overwrite a change made on disk.** Saving after the
|
||||
compose file or `.env` was edited in a terminal (or by a git sync) asks
|
||||
whether to overwrite it or load the version on disk.
|
||||
- **A stack whose folder is gone says so** ("folder missing") instead of passing
|
||||
for an ordinary stopped stack.
|
||||
|
||||
## Upgrading to 0.60.0 — single sign-on
|
||||
|
||||
**Settings → Single sign-on (OIDC)** configures an identity provider — Authentik,
|
||||
|
||||
Reference in new issue
Block a user