api/docker-compose.dev.yml
Kevin Carter 52f5ef4ca2
Some checks failed
api-ci-deploy / test-build-deploy (push) Has been cancelled
feat: add init service to dev compose, remove redundant build sections
- Add init service behind --profile init with cc-api-dev:latest image
- Remove build sections from backend-dev and backend-test (pre-built images)
- Add env var comments referencing .env.example
- Standardize INIT_MODE=infra default, RUN_INIT=true for init service
2026-05-29 21:15:52 +01:00

98 lines
2.4 KiB
YAML

services:
# ── Required environment variables (see .env.example) ───────────────────────
# APP_BOLT_URL, USER_NEO4J, PASSWORD_NEO4J — Neo4j connection
# SUPABASE_URL, SERVICE_ROLE_KEY — Supabase project
# REDIS_HOST, REDIS_PORT, REDIS_PASSWORD — Redis (optional auth)
# FASTAPI_SECRET_KEY, ADMIN_EMAIL — API config
redis-dev:
image: redis:7-alpine
container_name: cc-redis-dev
ports:
- "16379:6379"
volumes:
- redis-dev-data:/data
command: redis-server --appendonly yes
networks:
- kevlarai-network
healthcheck:
test: [ "CMD", "redis-cli", "ping" ]
interval: 5s
timeout: 3s
retries: 5
init:
image: cc-api-dev:latest
container_name: api-init-dev
env_file:
- .env.dev
environment:
- REDIS_HOST=redis-dev
- RUN_INIT=true
- INIT_MODE=${INIT_MODE:-infra}
- INIT_ONLY=true
command: ["./docker-entrypoint.sh", "init-only"]
depends_on:
redis-dev:
condition: service_healthy
networks:
- kevlarai-network
profiles:
- init
backend-dev:
container_name: cc-api-dev
image: cc-api-dev:latest
env_file:
- .env.dev
environment:
- REDIS_HOST=redis-dev
- REDIS_DB_DEV=0
- BACKEND_DEV_MODE=true
- APP_ENV=development
- ENVIRONMENT=development
- START_MODE=dev
- CC_COMPOSE_PROJECT=api-dev
- CC_COMPOSE_SERVICE=backend-dev
- RUN_INIT=false
- INIT_MODE=infra
ports:
- "18000:8000"
depends_on:
redis-dev:
condition: service_healthy
networks:
- kevlarai-network
restart: unless-stopped
backend-test:
image: cc-api-dev:latest
env_file:
- .env.dev
environment:
- REDIS_HOST=redis-dev
- REDIS_DB_DEV=0
- BACKEND_DEV_MODE=true
- APP_ENV=development
- ENVIRONMENT=development
- START_MODE=dev
- CC_COMPOSE_PROJECT=api-dev
- CC_COMPOSE_SERVICE=backend-test
- API_HEALTH_URL=http://192.168.0.64:18000/health
depends_on:
redis-dev:
condition: service_healthy
networks:
- kevlarai-network
entrypoint: ["python", "-m", "pytest"]
command: ["-q", "tests"]
profiles:
- test
volumes:
redis-dev-data:
networks:
kevlarai-network:
external: true
name: kevlarai-network