Files
RetroHub/docker-compose.yml
T

103 lines
2.6 KiB
YAML

services:
app:
build:
context: .
dockerfile: Dockerfile
container_name: retrohub-app
restart: unless-stopped
ports:
- "8080:80"
volumes:
- retrohub-roms:/var/www/retrohub/storage/app/roms
- retrohub-saves:/var/www/retrohub/storage/app/saves
- retrohub-covers:/var/www/retrohub/storage/app/covers
environment:
- APP_URL=${APP_URL:-http://localhost:8080}
- APP_KEY=${APP_KEY}
- DB_CONNECTION=pgsql
- DB_HOST=db
- DB_PORT=5432
- DB_DATABASE=retrohub
- DB_USERNAME=retrohub
- DB_PASSWORD=${DB_PASSWORD}
- REDIS_HOST=redis
- CACHE_DRIVER=redis
- SESSION_DRIVER=redis
- QUEUE_CONNECTION=redis
- IGDB_CLIENT_ID=${IGDB_CLIENT_ID}
- IGDB_CLIENT_SECRET=${IGDB_CLIENT_SECRET}
- TGDB_API_KEY=${TGDB_API_KEY}
depends_on:
db:
condition: service_healthy
redis:
condition: service_healthy
db:
image: pgvector/pgvector:pg16
container_name: retrohub-db
restart: unless-stopped
volumes:
- retrohub-db:/var/lib/postgresql/data
environment:
- POSTGRES_DB=retrohub
- POSTGRES_USER=retrohub
- POSTGRES_PASSWORD=${DB_PASSWORD}
healthcheck:
test: ["CMD-SHELL", "pg_isready -U retrohub"]
interval: 10s
timeout: 5s
retries: 5
redis:
image: redis:7-alpine
container_name: retrohub-redis
restart: unless-stopped
volumes:
- retrohub-redis:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
worker:
build:
context: .
dockerfile: Dockerfile
container_name: retrohub-worker
restart: unless-stopped
command: php artisan horizon
volumes:
- retrohub-roms:/var/www/retrohub/storage/app/roms
- retrohub-saves:/var/www/retrohub/storage/app/saves
- retrohub-covers:/var/www/retrohub/storage/app/covers
environment:
- APP_URL=${APP_URL:-http://localhost:8080}
- APP_KEY=${APP_KEY}
- DB_CONNECTION=pgsql
- DB_HOST=db
- DB_PORT=5432
- DB_DATABASE=retrohub
- DB_USERNAME=retrohub
- DB_PASSWORD=${DB_PASSWORD}
- REDIS_HOST=redis
- CACHE_DRIVER=redis
- SESSION_DRIVER=redis
- QUEUE_CONNECTION=redis
- IGDB_CLIENT_ID=${IGDB_CLIENT_ID}
- IGDB_CLIENT_SECRET=${IGDB_CLIENT_SECRET}
- TGDB_API_KEY=${TGDB_API_KEY}
depends_on:
db:
condition: service_healthy
redis:
condition: service_healthy
volumes:
retrohub-db:
retrohub-redis:
retrohub-roms:
retrohub-saves:
retrohub-covers: