86 lines
1.6 KiB
YAML
86 lines
1.6 KiB
YAML
services:
|
|
db:
|
|
build:
|
|
context: .
|
|
dockerfile: docker/db/Dockerfile
|
|
container_name: mariadb
|
|
restart: unless-stopped
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: ${DB_PASSWORD}
|
|
MYSQL_DATABASE: ${DB_NAME}
|
|
MYSQL_USER: ${DB_USER}
|
|
MYSQL_PASSWORD: ${DB_PASSWORD}
|
|
ports:
|
|
- "${DB_PORT}:3306"
|
|
volumes:
|
|
- ./db_storage/mysql:/var/lib/mysql
|
|
env_file:
|
|
- .env
|
|
|
|
redis:
|
|
image: redis:7.2
|
|
container_name: redis
|
|
restart: unless-stopped
|
|
ports:
|
|
- "${REDIS_PORT}:6379"
|
|
env_file:
|
|
- .env
|
|
|
|
django:
|
|
build:
|
|
context: .
|
|
dockerfile: docker/main/Dockerfile
|
|
container_name: django
|
|
command: python manage.py runserver 0.0.0.0:8000
|
|
volumes:
|
|
- .:/app
|
|
ports:
|
|
- "8000:8000"
|
|
env_file:
|
|
- .env
|
|
depends_on:
|
|
- db
|
|
- redis
|
|
|
|
bot:
|
|
build:
|
|
context: .
|
|
dockerfile: docker/bot/Dockerfile
|
|
container_name: bot
|
|
command: python manage.py runbot
|
|
volumes:
|
|
- .:/app
|
|
env_file:
|
|
- .env
|
|
depends_on:
|
|
- db
|
|
- redis
|
|
|
|
celery_worker:
|
|
build:
|
|
context: .
|
|
dockerfile: docker/celery/Dockerfile
|
|
container_name: celery_worker
|
|
command: celery -A tg_autopost worker -l info
|
|
volumes:
|
|
- .:/app
|
|
env_file:
|
|
- .env
|
|
depends_on:
|
|
- db
|
|
- redis
|
|
|
|
celery_beat:
|
|
build:
|
|
context: .
|
|
dockerfile: docker/celery/Dockerfile
|
|
container_name: celery_beat
|
|
command: celery -A tg_autopost beat -l info --scheduler django_celery_beat.schedulers:DatabaseScheduler
|
|
volumes:
|
|
- .:/app
|
|
env_file:
|
|
- .env
|
|
depends_on:
|
|
- db
|
|
- redis
|