feat: docker-compose.local.yml for local build/smoke-test
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
# Local development / smoke-test compose file.
|
||||
# Unlike docker-compose.example.yml (which pulls a pre-built image from a registry),
|
||||
# this file BUILDS the image from the local Dockerfile so you can iterate without
|
||||
# pushing anywhere.
|
||||
#
|
||||
# Usage:
|
||||
# 1. Copy .env.example to .env and fill in UPDATER_API_KEY (e.g. `openssl rand -hex 32`)
|
||||
# 2. Optionally adjust STACKS_ROOT below to point at a directory you actually have
|
||||
# compose stacks in (default points at this repo dir, which is fine for smoke tests)
|
||||
# 3. docker compose -f docker-compose.local.yml up --build
|
||||
# 4. curl -s http://localhost:8080/healthz | jq
|
||||
# 5. curl -sH "Authorization: Bearer $UPDATER_API_KEY" -d '{"image":"test"}' \
|
||||
# http://localhost:8080/update | jq
|
||||
|
||||
services:
|
||||
package-updater:
|
||||
build:
|
||||
context: .
|
||||
args:
|
||||
VERSION: dev-local
|
||||
COMMIT: ${COMMIT:-unknown}
|
||||
BUILD_TIME: ${BUILD_TIME:-unknown}
|
||||
container_name: package-updater-local
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- UPDATER_API_KEY=${UPDATER_API_KEY}
|
||||
- STACKS_ROOT=${STACKS_ROOT:-/tmp}
|
||||
- LOG_LEVEL=debug
|
||||
- PORT=8080
|
||||
- UPDATE_TIMEOUT=5m
|
||||
ports:
|
||||
- "8080:8080"
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- ${STACKS_ROOT:-/tmp}:${STACKS_ROOT:-/tmp}:ro
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "-q", "-O-", "http://localhost:8080/healthz"]
|
||||
interval: 30s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
Reference in New Issue
Block a user