Skip to content

feat(docker): multi-stage image, release workflow, docker-compose#11

Merged
bakeb7j0 merged 1 commit into
mainfrom
feature/5-docker-ci
Apr 2, 2026
Merged

feat(docker): multi-stage image, release workflow, docker-compose#11
bakeb7j0 merged 1 commit into
mainfrom
feature/5-docker-ci

Conversation

@bakeb7j0
Copy link
Copy Markdown
Contributor

@bakeb7j0 bakeb7j0 commented Apr 2, 2026

Summary

Optimized Docker image with multi-stage build, CI release workflow to ghcr.io, docker-compose for local dev, and updated README with full endpoint/env var documentation.

Changes

  • Dockerfile — Multi-stage build: oven/bun:latest builder → oven/bun:slim runtime (177MB). HEALTHCHECK against /health with 10s start period.
  • .dockerignore — Fixed bun.lock exclusion (needed for --frozen-lockfile), added docker-compose.yml
  • docker-compose.yml — Local dev: builds from Dockerfile, reads .env, maps port 3000
  • .github/workflows/release.yml — On v* tags: login to ghcr.io, build + push with semver + latest tags. All action-based steps, no procedural YAML.
  • README.md — Full endpoint table (GET channels, messages, POST, health), CACHE_WINDOW_MS env var, Docker/Compose/Bun quick start sections

Test Plan

  • docker build -t scream-hole-test . — builds successfully, 177MB
  • bun test — 54 pass, 0 fail
  • No source code changes

Closes #5

🤖 Generated with Claude Code

Optimized Dockerfile with multi-stage build (oven/bun:slim runtime,
177MB image), healthcheck against /health endpoint. Release workflow
pushes to ghcr.io on v* tags using standard Docker actions. Added
docker-compose.yml for local development. README updated with all
endpoints, env var reference, and Docker/Compose/Bun quick start.

No deployment-topology assumptions — consumer decides how to run it.

Closes #5

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@bakeb7j0 bakeb7j0 merged commit ea61291 into main Apr 2, 2026
4 checks passed
@bakeb7j0 bakeb7j0 deleted the feature/5-docker-ci branch April 2, 2026 22:10
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.

Docker image and CI release

1 participant