Files
tg_autopost/docker-compose.yml
2025-08-08 09:23:57 +09:00

84 lines
1.6 KiB
YAML

version: "3.9"
services:
db:
build:
context: .
dockerfile: docker/db/Dockerfile
container_name: mariadb
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: rootpass
MYSQL_DATABASE: tg_autopost
MYSQL_USER: tguser
MYSQL_PASSWORD: tgpass
ports:
- "3306:3306"
volumes:
- ./app/var/lib/mysql:/var/lib/mysql
redis:
image: redis:7.2
container_name: redis
restart: unless-stopped
ports:
- "6379:6379"
django:
build:
context: .
dockerfile: docker/main/Dockerfile
container_name: django
command: python manage.py runserver 0.0.0.0:8000
volumes:
- ./app:/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:/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:/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:/app
env_file:
- .env
depends_on:
- db
- redis