85 lines
1.7 KiB
YAML
85 lines
1.7 KiB
YAML
services:
|
|
redis:
|
|
image: redis:7
|
|
restart: always
|
|
ports:
|
|
- "6379:6379"
|
|
networks:
|
|
- toinv-network
|
|
healthcheck:
|
|
test: ["CMD", "redis-cli","ping"]
|
|
|
|
back:
|
|
build:
|
|
context: ./back
|
|
dockerfile: Dockerfile
|
|
image: ci.svs-tech.pro/toinv_back:latest
|
|
command: poetry run python manage.py runserver 0.0.0.0:8000
|
|
restart: always
|
|
expose:
|
|
- "8000"
|
|
volumes:
|
|
- ./env/back.env:/app/.env
|
|
networks:
|
|
- toinv-network
|
|
healthcheck:
|
|
test: curl -f http://localhost:8000/ || exit 1
|
|
interval: 5s
|
|
timeout: 3s
|
|
retries: 20
|
|
|
|
celery:
|
|
build:
|
|
context: ./back
|
|
dockerfile: Dockerfile
|
|
image: ci.svs-tech.pro/toinv_back:latest
|
|
command: poetry run celery --app api worker --loglevel=info
|
|
restart: always
|
|
volumes:
|
|
- ./env/back.env:/app/.env
|
|
networks:
|
|
- toinv-network
|
|
depends_on:
|
|
back:
|
|
condition: service_healthy
|
|
redis:
|
|
condition: service_healthy
|
|
|
|
front:
|
|
build:
|
|
context: ./front
|
|
dockerfile: Dockerfile
|
|
restart: always
|
|
volumes:
|
|
- ./env/front.env:/app/.env
|
|
expose:
|
|
- "3000"
|
|
depends_on:
|
|
back:
|
|
condition: service_healthy
|
|
networks:
|
|
- toinv-network
|
|
image: ci.svs-tech.pro/toinv_front:latest
|
|
|
|
nginx:
|
|
image: ci.svs-tech.pro/nginx:1.25
|
|
restart: always
|
|
ports:
|
|
- "${WEB_PORT:-80}:80"
|
|
depends_on:
|
|
back:
|
|
condition: service_healthy
|
|
links:
|
|
- back:back
|
|
- front:front
|
|
- redis:redis
|
|
volumes:
|
|
- ./nginx/nginx.conf:/etc/nginx/nginx.conf
|
|
- ./nginx/conf.d:/etc/nginx/conf.d
|
|
networks:
|
|
- toinv-network
|
|
|
|
networks:
|
|
toinv-network:
|
|
driver: bridge
|