Files
rippy/docker-compose.yml
T
Hitonabi 524d2e570e
Ampel / ampel (push) Failing after 29s
fix(docker-compose): simplify device mounts, remove redundant volumes
- Remove cdrom/dvd anonymous volumes (not needed with direct mounts)
- Remove redundant devices/cap_add (mounts are sufficient)
2026-07-23 12:20:56 +02:00

120 lines
2.5 KiB
YAML

# Docker Compose für Rippy
services:
api:
build:
context: .
dockerfile: docker/api/Dockerfile
environment:
- DATABASE_URL=postgresql://rippy:rippy@postgres:5432/rippy
- REDIS_URL=redis://redis:6379/0
- TMDB_API_KEY=${TMDB_API_KEY}
- THETVDB_API_KEY=${THETVDB_API_KEY}
- JWT_SECRET_KEY=${JWT_SECRET_KEY}
- LOG_LEVEL=INFO
healthcheck:
test: ["CMD-SHELL", "python -c 'import urllib.request; urllib.request.urlopen(\"http://localhost:8000/health\")'"]
interval: 30s
timeout: 10s
retries: 3
start_period: 10s
ports:
- "8000:8000"
volumes:
- media:/app/media
- temp:/app/temp
networks:
- rippy-net
depends_on:
- postgres
- redis
restart: unless-stopped
read_only: true
tmpfs:
- /app/tmp
- /run
- /tmp
worker:
build:
context: .
dockerfile: docker/worker/Dockerfile
environment:
- DATABASE_URL=postgresql://rippy:rippy@postgres:5432/rippy
- REDIS_URL=redis://redis:6379/0
- TMDB_API_KEY=${TMDB_API_KEY}
- THETVDB_API_KEY=${THETVDB_API_KEY}
- JWT_SECRET_KEY=${JWT_SECRET_KEY}
- LOG_LEVEL=INFO
volumes:
- media:/app/media
- temp:/app/temp
- disc:/dev/disc
- /dev/cdrom:/dev/cdrom:ro
- /dev/sr0:/dev/sr0:ro
networks:
- rippy-net
depends_on:
- postgres
- redis
restart: unless-stopped
read_only: true
tmpfs:
- /app/tmp
- /run
- /tmp
ui:
build:
context: .
dockerfile: docker/ui/Dockerfile
ports:
- "80:80"
networks:
- rippy-net
depends_on:
- api
restart: unless-stopped
postgres:
image: postgres:16-alpine
environment:
- POSTGRES_USER=rippy
- POSTGRES_PASSWORD=rippy
- POSTGRES_DB=rippy
volumes:
- postgres-data:/var/lib/postgresql/data
networks:
- rippy-net
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "pg_isready -U rippy -d rippy"]
interval: 10s
timeout: 5s
retries: 5
redis:
image: redis:7-alpine
volumes:
- redis-data:/data
networks:
- rippy-net
restart: unless-stopped
command: redis-server --appendonly yes
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
networks:
rippy-net:
driver: bridge
volumes:
media:
temp:
disc:
postgres-data:
redis-data: