-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
69 lines (63 loc) · 1.85 KB
/
docker-compose.yml
File metadata and controls
69 lines (63 loc) · 1.85 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
services:
app:
build:
dockerfile: ./Dockerfile
context: ./
profiles: [ "prod" ]
container_name: app_container
environment:
CONFIG__MODE: PROD
CONFIG__DB__NAME: ${PROD_DB_NAME}
CONFIG__DB__PASSWORD: ${PROD_DB_PASSWORD}
CONFIG__DB__USER: ${PROD_DB_USER}
CONFIG__DB__HOST: pg
CONFIG__DB__PORT: ${PROD_DB_PORT}
CONFIG__DB__DRIVER: ${PROD_DB_DRIVER}
CONFIG__DB__ECHO: ${PROD_DB_ECHO}
CONFIG__DB__ECHO_POOL: ${PROD_DB_ECHO_POOL}
CONFIG__DB__POOL_SIZE: ${PROD_DB_POOL_SIZE}
CONFIG__DB__MAX_OVERFLOW: ${PROD_DB_MAX_OVERFLOW}
CONFIG__GUNICORN__HOST: ${CONFIG__GUNICORN__HOST}
CONFIG__GUNICORN__PORT: ${CONFIG__GUNICORN__PORT}
CONFIG__GUNICORN__WORKERS: ${CONFIG__GUNICORN__WORKERS}
CONFIG__GUNICORN__TIMEOUT: ${CONFIG__GUNICORN__TIMEOUT}
CONFIG__LOGGING__LEVEL: INFO
ports:
- "${CONFIG__GUNICORN__PORT}:${CONFIG__GUNICORN__PORT}"
depends_on:
pg:
condition: service_healthy
pg:
image: postgres:16
profiles: [ "prod" ]
container_name: pg_container
environment:
POSTGRES_DB: ${PROD_DB_NAME}
POSTGRES_USER: ${PROD_DB_USER}
POSTGRES_PASSWORD: ${PROD_DB_PASSWORD}
ports:
- ${PROD_DB_PORT}:5432
volumes:
- pg_data:/var/lib/postgresql/data
healthcheck:
test: [ "CMD-SHELL", "pg_isready" ]
interval: 3s
timeout: 3s
retries: 3
pg_test:
image: postgres:16
profiles: [ "test" ]
container_name: test_pg_container
environment:
POSTGRES_DB: ${CONFIG__TEST__DB__NAME}
POSTGRES_USER: ${CONFIG__TEST__DB__USER}
POSTGRES_PASSWORD: ${CONFIG__TEST__DB__PASSWORD}
ports:
- ${CONFIG__TEST__DB__PORT}:5432
healthcheck:
test: [ "CMD-SHELL", "pg_isready" ]
interval: 3s
timeout: 3s
retries: 3
volumes:
pg_data: