Files
social-app/infra/docker/docker-compose.yml
T

50 lines
1.8 KiB
YAML
Raw Normal View History

name: social-app-local
services:
redis:
image: redis:7-alpine
container_name: social-local-redis
restart: unless-stopped
ports:
- "${SOCIAL_REDIS__PORT:-6379}:6379"
volumes:
- redis_data:/data
environment:
- REDIS_PASSWORD=${SOCIAL_REDIS__PASSWORD:-}
command: >
sh -c 'if [ -n "$$REDIS_PASSWORD" ]; then redis-server --appendonly yes --requirepass "$$REDIS_PASSWORD"; else redis-server --appendonly yes; fi'
healthcheck:
test: ["CMD", "sh", "-c", "if [ -n \"$$REDIS_PASSWORD\" ]; then redis-cli -a \"$$REDIS_PASSWORD\" ping; else redis-cli ping; fi"]
interval: 5s
timeout: 3s
retries: 5
init-job:
build:
context: ../..
dockerfile: backend/Dockerfile
image: social-local-backend
container_name: social-local-init-job
restart: "no"
environment:
- PYTHONPATH=/app/backend/src
- SOCIAL_DATABASE__HOST=${SOCIAL_DATABASE__HOST}
- SOCIAL_DATABASE__PORT=${SOCIAL_DATABASE__PORT}
- SOCIAL_DATABASE__NAME=${SOCIAL_DATABASE__NAME}
- SOCIAL_DATABASE__USER=${SOCIAL_DATABASE__USER}
- SOCIAL_DATABASE__PASSWORD=${SOCIAL_DATABASE__PASSWORD}
- SOCIAL_REDIS__HOST=${SOCIAL_REDIS__HOST}
- SOCIAL_REDIS__PORT=${SOCIAL_REDIS__PORT}
- SOCIAL_REDIS__PASSWORD=${SOCIAL_REDIS__PASSWORD:-}
- SOCIAL_RUNTIME__ENVIRONMENT=${SOCIAL_RUNTIME__ENVIRONMENT:-dev}
depends_on:
redis:
condition: service_healthy
working_dir: /app/backend
command: uv run python -m core.runtime.cli bootstrap
2026-02-24 18:18:42 +08:00
profiles:
- job
volumes:
redis_data: