56 lines
1.2 KiB
YAML
56 lines
1.2 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
redis:
|
|
image: "redis:alpine"
|
|
ports:
|
|
- "6379:6379"
|
|
volumes:
|
|
- redis_data:/data
|
|
|
|
web:
|
|
build: .
|
|
ports:
|
|
- "12000:12000"
|
|
volumes:
|
|
- .:/app
|
|
- ./uploads:/app/uploads
|
|
env_file:
|
|
- .env
|
|
depends_on:
|
|
- redis
|
|
# The following 'deploy' key enables GPU access for the service.
|
|
# This requires nvidia-container-toolkit to be installed on the host.
|
|
# Docker Compose will automatically use this if available.
|
|
deploy:
|
|
resources:
|
|
reservations:
|
|
devices:
|
|
- driver: nvidia
|
|
count: all
|
|
capabilities: [gpu]
|
|
command: gunicorn --bind 0.0.0.0:12000 --workers 4 app:app
|
|
|
|
worker:
|
|
build: .
|
|
volumes:
|
|
- .:/app
|
|
- ./uploads:/app/uploads
|
|
- ./demucs_separated:/app/demucs_separated
|
|
env_file:
|
|
- .env
|
|
depends_on:
|
|
- redis
|
|
deploy:
|
|
resources:
|
|
reservations:
|
|
devices:
|
|
- driver: nvidia
|
|
count: all
|
|
capabilities: [gpu]
|
|
# For Windows, you might need to use -P gevent
|
|
command: celery -A tasks.celery worker --loglevel=info --pool=solo
|
|
|
|
volumes:
|
|
redis_data:
|