46 lines
1.2 KiB
YAML
46 lines
1.2 KiB
YAML
|
version: '3.7'
|
||
|
|
||
|
services:
|
||
|
web:
|
||
|
build: ./web
|
||
|
container_name: palindrome-web
|
||
|
restart: unless-stopped
|
||
|
volumes:
|
||
|
- ./web/app:/usr/src/palindrome-app/app
|
||
|
- ./web/palindromes:/usr/src/palindrome-app/palindromes
|
||
|
- ./web/functional_tests.py:/usr/src/palindrome-app/functional_tests.py
|
||
|
- ./web/manage.py:/usr/src/palindrome-app/manage.py
|
||
|
- ./static_volume:/usr/src/palindrome-app/staticfiles
|
||
|
expose:
|
||
|
- 8000
|
||
|
env_file: live.env
|
||
|
depends_on:
|
||
|
- db
|
||
|
command: >
|
||
|
bash -c "./wait-for-it/wait-for-it.sh db:5432 --strict --timeout=0
|
||
|
&& gunicorn --bind 0.0.0.0:8000 --workers=4 app.wsgi:application"
|
||
|
|
||
|
db:
|
||
|
container_name: palindrome-db
|
||
|
env_file: live.env
|
||
|
restart: unless-stopped
|
||
|
environment:
|
||
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||
|
POSTGRES_USER: ${POSTGRES_USER}
|
||
|
POSTGRES_DB_NAME: ${POSTGRES_DB_NAME}
|
||
|
expose:
|
||
|
- 5432
|
||
|
image: postgres:13
|
||
|
volumes:
|
||
|
- ./postgres_data:/var/lib/postgresql/data/
|
||
|
nginx:
|
||
|
container_name: palindrome-nginx
|
||
|
build: ./nginx
|
||
|
restart: unless-stopped
|
||
|
volumes:
|
||
|
- ./static_volume:/usr/src/app/staticfiles
|
||
|
ports:
|
||
|
- 8000:80
|
||
|
depends_on:
|
||
|
- web
|