56 lines
1.1 KiB
YAML
56 lines
1.1 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
exam_server:
|
|
build: ./exam_server
|
|
container_name: exam_server
|
|
volumes:
|
|
- ./exam_server:/app
|
|
- ./data:/data
|
|
- db_data:/app/db
|
|
environment:
|
|
- DEBUG=True
|
|
- SECRET_KEY=dev-secret-key-change-in-production
|
|
- ALLOWED_HOSTS=localhost,127.0.0.1,exam_server
|
|
- CORS_ALLOWED_ORIGINS=http://localhost,http://localhost:4200
|
|
- INPUT_DIR=/data/input
|
|
- ATTEMPTS_DIR=/data/attempts
|
|
- OUTPUT_DIR=/data/output
|
|
- PROGRESS_DIR=/data/progress
|
|
- MANIFEST_FILE=/data/manifest.json
|
|
expose:
|
|
- "8000"
|
|
networks:
|
|
- exam_network
|
|
|
|
exam_web:
|
|
build: ./exam_web
|
|
container_name: exam_web
|
|
volumes:
|
|
- ./exam_web:/app
|
|
- /app/node_modules
|
|
expose:
|
|
- "4200"
|
|
networks:
|
|
- exam_network
|
|
|
|
nginx:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.nginx
|
|
container_name: exam_nginx
|
|
ports:
|
|
- "80:80"
|
|
depends_on:
|
|
- exam_server
|
|
- exam_web
|
|
networks:
|
|
- exam_network
|
|
|
|
volumes:
|
|
db_data:
|
|
|
|
networks:
|
|
exam_network:
|
|
driver: bridge
|