Refactored Stripe payment integration to use a dedicated Stripe model for session data, updating the PaymentSerializer accordingly. Renamed Order.Status to Order.OrderStatus for clarity. Updated configuration app to ensure SiteConfiguration singleton is created post-migration. Removed obsolete seed_app_config command from docker-compose. Adjusted frontend API generated files and moved orval config.
118 lines
2.6 KiB
YAML
118 lines
2.6 KiB
YAML
services:
|
|
backend:
|
|
container_name: backend-vontor-cz
|
|
build:
|
|
context: ./backend
|
|
dockerfile: dockerfile
|
|
restart: always
|
|
env_file:
|
|
- ./backend/.env
|
|
networks:
|
|
- app_network
|
|
depends_on:
|
|
- db
|
|
- redis
|
|
volumes:
|
|
- static-data:/app/collectedstaticfiles
|
|
- media-data:/app/media
|
|
command: sh -c "
|
|
python manage.py migrate --verbosity 3 --noinput &&
|
|
python manage.py check &&
|
|
python manage.py collectstatic --clear --noinput --verbosity 3 &&
|
|
gunicorn -k uvicorn.workers.UvicornWorker vontor_cz.asgi:application --bind 0.0.0.0:8000"
|
|
ports:
|
|
- "8000:8000"
|
|
|
|
db:
|
|
image: postgres:15-alpine
|
|
container_name: postgres-vontor-cz
|
|
restart: always
|
|
env_file:
|
|
- ./backend/.env
|
|
volumes:
|
|
- db-data:/var/lib/postgresql/data
|
|
ports:
|
|
- "5432:5432"
|
|
networks:
|
|
- app_network
|
|
|
|
|
|
redis: #extremly fast db, stores data in RAM memory
|
|
container_name: redis-vontor-cz
|
|
image: redis:alpine
|
|
restart: always
|
|
env_file:
|
|
- ./backend/.env
|
|
volumes:
|
|
- redis-data:/data
|
|
expose:
|
|
- "6379"
|
|
networks:
|
|
- app_network
|
|
|
|
celery: #task queue for handling asynchronous/hard tasks
|
|
container_name: celery-vontor-cz
|
|
build:
|
|
context: ./backend
|
|
dockerfile: dockerfile
|
|
command: sh -c "python manage.py migrate --noinput && celery -A vontor_cz worker --loglevel=info"
|
|
restart: always
|
|
env_file:
|
|
- ./backend/.env
|
|
depends_on:
|
|
- redis
|
|
- db
|
|
- backend
|
|
networks:
|
|
- app_network
|
|
|
|
celery-beat: #periodic tasks scheduler
|
|
container_name: celery-beat-vontor-cz
|
|
build:
|
|
context: ./backend
|
|
dockerfile: dockerfile
|
|
command: sh -c "python manage.py migrate --noinput && celery -A vontor_cz beat --loglevel=info"
|
|
restart: always
|
|
env_file:
|
|
- ./backend/.env
|
|
depends_on:
|
|
- redis
|
|
- db
|
|
- backend
|
|
networks:
|
|
- app_network
|
|
|
|
#end of backend services -----------------------
|
|
|
|
nginx: #web server, reverse proxy, serves static files
|
|
container_name: nginx-vontor-cz
|
|
build:
|
|
context: ./frontend
|
|
dockerfile: Dockerfile.prod
|
|
env_file:
|
|
- ./frontend/.env
|
|
ports:
|
|
# - 80:80
|
|
- 9000:80
|
|
depends_on:
|
|
- backend
|
|
networks:
|
|
- app_network
|
|
volumes:
|
|
- static-data:/app/collectedstaticfiles # static (Django)
|
|
- media-data:/app/media # media (Django)
|
|
- ./frontend/nginx/nginx.conf:/etc/nginx/nginx.conf:ro
|
|
|
|
|
|
|
|
networks:
|
|
app_network:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
redis-data:
|
|
db-data:
|
|
static-data:
|
|
media-data:
|
|
|