Files
oxpanel25/docker-compose.yml
2025-04-13 11:59:50 +02:00

76 lines
1.8 KiB
YAML

services:
redis:
image: redis:alpine
restart: unless-stopped
web:
image: nginx:alpine
volumes:
- ./app/static_collected:/app/static_collected:ro
- ./app/media:/app/media:ro
- ./nginx/default.nginx:/etc/nginx/conf.d/default.conf:ro
- ./transmission/downloads/complete/:/transmission/downloads/complete:ro
ports:
- "${LISTEN_PORT:-8000}:80"
restart: unless-stopped
depends_on:
- app
transmission:
image: linuxserver/transmission
environment:
- TZ=Europe/Paris
- PUID=${USER_ID}
- PGID=${GROUP_ID}
ports:
- "51414:51414"
- "51414:51414/udp"
volumes:
- ./transmission/config:/config
- ./transmission/downloads:/downloads
restart: unless-stopped
app:
build:
context: ./app
dockerfile: "Dockerfile"
args:
puid: ${USER_ID}
pgid: ${GROUP_ID}
env_file:
- .env
volumes:
- ./app:/app
- ./transmission:/transmission:ro
- /app/frontend/node_modules
restart: unless-stopped
depends_on:
- redis
command: >
bash -c "python manage.py collectstatic --noinput
&& python manage.py migrate
&& cd frontend && yarn build && cd ..
&& python manage.py collectstatic --noinput
&& python manage.py migrate
&& uvicorn app.asgi:application --workers 3 --host 0.0.0.0 --port 8000 --lifespan off --loop uvloop --ws websockets"
# celery:
# extends:
# service: app
# restart: unless-stopped
# depends_on:
# - redis
# - app
# command: >
# bash -c "sleep 5 & celery -A app worker -E -B"
event:
extends:
service: app
restart: unless-stopped
depends_on:
- redis
- app
command: >
bash -c "sleep 5 & python manage.py torrent_event"