Skip to content

fix: deploy.sh pulls fresh base images, so runtime security fixes arrive - #284

Merged
eth-man merged 1 commit into
mainfrom
fix/deploy-pull-base-images
Oct 26, 2026
Merged

eth-man merged 1 commit into
mainfrom
fix/deploy-pull-base-images

Conversation

@eth-man

@eth-man eth-man commented Oct 26, 2026

Copy link
Copy Markdown
Owner

scripts/deploy.sh built with plain docker compose build, so Docker reused the node:22-alpine it cached at the first install and runtime security fixes never reached a deployment. When Node 22.23.4 stopped trusting the roots of the compromised eMudhra certificate authority (October 2026), deployments kept running 22.23.2 and 22.23.3.

  • Every build now runs docker compose build --pull, and pulls the image-only services: db, and the TLS proxy where it is started.
  • If the registry cannot be reached, the build falls back to the cached images with a message, so an air-gapped host still deploys.
  • postgres:16-alpine stays on its pinned major; the database container is recreated when a newer 16.x patch image arrives (a restart of a few seconds, data volume untouched).

Verified: shellcheck (v0.9.0, as CI) and prettier clean. Run on a real deployment: the build re-resolved node:22-alpine, pulled the database image, the containers came back healthy on Node 22.23.4 with the data intact, and the database moved to Postgres 16.15. The offline fallback was exercised with a stubbed docker that fails the pull: it warns and falls back to the cached build.

@eth-man
eth-man merged commit 8e87adc into main Oct 26, 2026
9 checks passed
@eth-man
eth-man deleted the fix/deploy-pull-base-images branch October 26, 2026 17:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant