-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose-deploy.yml
46 lines (41 loc) · 1.57 KB
/
docker-compose-deploy.yml
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
# docker-compose-deploy จะใช้สำหรับ deployment
version: "3.9"
services:
app:
build:
context: . # Dockerfile ตรงนี้เอาไว้รัน project django (ไม่ใช่ proxy)
restart: always # ถ้า cache (ไม่ว่าเหตุผลอะไรก็ตาม) ก็จะ restart auto เลย
volumes:
- static-data:/vol/web # volumes สำหรับเก็บ static data
environment: # env var config สำหรับ running "app" service ของเรา
- DB_HOST=db
- DB_NAME=${DB_NAME}
- DB_USER=${DB_USER}
- DB_PASS=${DB_PASS}
- SECRET_KEY=${DJANGO_SECRET_KEY}
- ALLOWED_HOSTS=${DJANGO_ALLOWED_HOSTS}
depends_on:
- db
db:
image: postgres:13-alpine
restart: always
volumes:
- postgres-data:/var/lib/postgresql/data
environment:
- POSTGRES_DB=${DB_NAME}
- POSTGRES_USER=${DB_USER}
- POSTGRES_PASSWORD=${DB_PASS}
proxy:
build:
context: ./proxy # dockerfile ตรงนี้เอาไว้รัน nginx
restart: always
depends_on:
- app
ports:
- 80:8000 # 80 จาก local machine และ 8000 จากใน container
# เปลี่ยนจาก 80 เป็น 8000 เพราะโดยปกติ localhost จะเอาไปใช้แล้ว
volumes:
- static-data:/vol/static
volumes:
postgres-data:
static-data: # เป็น volumes ของ static file ที่เราจะใช้ทั้ง app และ proxy