fix(deploy): referentie-compose niet-runnable maken + dood fragment schrappen #106
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/compose-reference-not-runnable"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Sluit de laatste
container_name-footgun rond de compose-collision-check. Volgt op het 154-onderzoek van vandaag; raakt de live stack niet (nul downtime, geen deploy-oppervlak).Wat er aan de hand was
deploy/compose/docker-compose.ymlis een referentie-template van de srv-stack, maar droeg de echte live container_names (scrum4me-postgres,-caddy,-workers,-ops-dashboard) én de bind-mount naar/srv/scrum4me/postgres.Twee onafhankelijke failure modes, en de
name: scrum4me-srvuit6e079dcdekt er maar één van:name:dit af?compose/)container_name, globaal uniek, los van het projectname:reist mee met een kopie, de botsing nietBij (b) weigert Docker de create ("name already in use"), dus het faalt veilig — maar dat is toeval, niet ontwerp.
Wat deze PR doet
deploy/compose/docker-compose.yml→deploy/reference/scrum4me-stack.yml.tmpl. Uit een map diecomposeheet, en met een suffix die Compose niet vanzelf oppikt: het valt daarmee buitendocker composeauto-discovery én buiten de glob vancheck-compose-collision.sh. Wie het tóch wil gebruiken moet expliciet-ftypen en loopt dan nog steeds tegen (b) aan — luid en veilig.name:en de container_names blijven staan: het is een getrouwe referentie van de live stack, dat is het punt ervan. Ze-refmaken zou de template laten liegen.deploy/docker-compose.ops-dashboard.ymlverwijderd — een fragment om handmatig in de stack te mergen, met build-context/srv/ops/repos/ops-dashboarddie op geen van beide hosts nog bestaat. De ops-dashboard-service staat allang in de stack zelf.Context: waarom max2 dit rood meldde
De scanner vlagde dit bestand daar als destructieve project-name collision. Dat bleek een stale deploy-clone:
/srv/scrum4me/ops-dashboardop max2 liep 24 commits achter en miste dus6e079dc. Na een pull is (a) daar weg. (b) bleef op beide hosts staan — dat is wat deze PR opruimt.Op 154 is de scanner al clean (de siblings zijn gepind), en een rename van de live stack is daar afgeraden: Caddy proxiet vijf publieke vhosts naar
172.18.0.1:3000, de gateway van het compose-netwerk, en een netwerk-recreate kan dat subnet verschuiven.Verificatie
name: scrum4me-srven alle zes services + container_names intact.docker compose configkan de template op max2 niet renderen omdat hij naar/srv/scrum4me/secrets/mcp-http.envwijst — een 154-only pad. Dat bevestigt dat het 154's stack beschrijft en geen deploy-bron is.docs/superpowers/reviews/2026-05-28-…) dat het pad als bewijs citeert. Bewust niet aangepast: dat is een momentopname.🤖 Generated with Claude Code