Files
conference-room-booking-system/compose.dev.yml

85 lines
1.8 KiB
YAML

# docker compose file for development environment
services:
backend:
extends:
file: compose.yml
service: backend
volumes:
- ./backend/src:/app/src
- ./backend/poetry.lock:/app/poetry.lock
- ./backend/pyproject.toml:/app/pyproject.toml
environment:
ENVIRONMENT: development
ports:
- "8000:8000"
command:
[
"uvicorn",
"backend.main:app",
"--host",
"0.0.0.0",
"--port",
"8000",
"--reload",
]
restart: always
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "3"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
interval: 30s
timeout: 10s
retries: 3
security_opt:
- no-new-privileges:true
frontend:
extends:
file: compose.yml
service: frontend
volumes:
- ./frontend/src:/app/src
- ./frontend/public:/app/public
- ./frontend/node_modules:/app/node_modules
- ./frontend/build:/app/build
- ./frontend/package.json:/app/package.json
- ./frontend/yarn.lock:/app/yarn.lock
command: ["yarn", "start"]
restart: always
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "3"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/health"]
interval: 30s
timeout: 10s
retries: 3
security_opt:
- no-new-privileges:true
postgres:
extends:
file: compose.yml
service: postgres
ports:
- "5432:5432"
restart: always
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "3"
volumes:
postgres-data:
networks:
app-network:
driver: bridge