mirror of
https://github.com/tdurieux/anonymous_github.git
synced 2026-05-15 22:48:00 +02:00
perf(deploy): faster builds and zero-downtime streamer rollover
- Multi-stage Dockerfile with BuildKit npm cache mounts and a separate prod-deps stage so source edits don't reinstall or prune. - Tighter .dockerignore to shrink build context. - Healthchecks: add start_period and tighten interval/retries so containers report healthy as soon as the process is actually ready instead of after a full polling interval. - Move recoverStuckPreparing() off the startup critical path; the recovery sweep now runs in the background after app.listen. - depends_on uses condition: service_healthy and the obsolete compose 'version' key is gone. - New scripts/build.sh + scripts/deploy.sh: deploy.sh builds, exits early if the image is unchanged, runs a blue/green streamer swap (scale to 2N, wait healthy in parallel, drop olds), then recreates the API with --no-deps to avoid compose's depends_on re-poll.
This commit is contained in:
+21
-3
@@ -1,5 +1,23 @@
|
||||
.git
|
||||
.github
|
||||
.vscode
|
||||
.idea
|
||||
.claude
|
||||
node_modules
|
||||
build
|
||||
/repositories
|
||||
db_backups
|
||||
build
|
||||
node_modules
|
||||
.github
|
||||
coverage
|
||||
.nyc_output
|
||||
*.log
|
||||
.env
|
||||
.env.*
|
||||
tests
|
||||
test
|
||||
docs
|
||||
*.md
|
||||
claude-files
|
||||
scripts
|
||||
.dockerignore
|
||||
Dockerfile*
|
||||
docker-compose*.yml
|
||||
|
||||
Reference in New Issue
Block a user