portfolio-blog/docker-compose.yml

56 lines
1.0 KiB
YAML

version: "3.9"
services:
db:
image: postgres
ports:
- 5432:5432
volumes:
- dbdata:/var/lib/postgresql/data
env_file:
- ./config/postgres/postgres.env
mongodb:
image: mongo:latest
env_file:
- ./config/mongodb/mongodb.env
ports:
- 27017:27017
volumes:
- mongodb_data:/data/db
app:
build: ./src/
env_file:
- ./config/postgres/postgres.env
- ./config/mongodb/mongodb.env
- ./config/app/app.env
ports:
- 8000:8000
depends_on:
- db
- mongodb
volumes:
- ./src/app:/src/app
- static:/src/static
- media:/src/media
command: >
bash -c "poetry run alembic upgrade head
&& poetry run uvicorn --reload --host=0.0.0.0 --port=8000 app.main:app"
nginx:
image: nginx
ports:
- 80:80
volumes:
- ./config/nginx/nginx.conf:/etc/nginx/conf.d/default.conf
- static:/static
- media:/media
depends_on:
- app
volumes:
dbdata:
static:
media:
mongodb_data: