-
Notifications
You must be signed in to change notification settings - Fork 50
/
docker-compose.yml
132 lines (132 loc) · 3.24 KB
/
docker-compose.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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
version: '3.8'
services:
### ===================
### APP SERVICE
### ===================
app:
container_name: app
restart: always
build: .
healthcheck:
interval: 120ms
retries: 5
start_period: 60ms
test: |
touch /tmp/healthcheck.txt &&
mkdir /tmp/healthcheck &&
mv /tmp/healthcheck.txt /tmp/healthcheck &&
cd /tmp/healthcheck &&
echo "hello my docker container is working fine" >> healthcheck.txt &&
cat healthcheck.txt &&
rm healthcheck.txt &&
cd .. &&
rmdir /tmp/healthcheck
cls
timeout: 60ms
env_file:
- .env
ports:
- 4000:4000
networks:
- restapi_network
depends_on:
- db
### ===================
### DB SERVICE
### ===================
db:
image: postgres:12-alpine
restart: always
healthcheck:
interval: 120ms
retries: 5
start_period: 60ms
test: |
touch /tmp/healthcheck.txt &&
mkdir /tmp/healthcheck &&
mv /tmp/healthcheck.txt /tmp/healthcheck &&
cd /tmp/healthcheck &&
echo "hello my docker container is working fine" >> healthcheck.txt &&
cat healthcheck.txt &&
rm healthcheck.txt &&
cd .. &&
rmdir /tmp/healthcheck
cls
timeout: 60ms
environment:
POSTGRES_DB: campus
POSTGRES_USER: restuwahyu13
POSTGRES_PASSWORD: restuwahyu13
ports:
- 5430:5432
volumes:
- pg-data:/var/lib/postgresql/data
networks:
- restapi_network
### ===================
### ADMINER SERVICE
### ===================
panel:
image: adminer:latest
restart: always
healthcheck:
interval: 120ms
retries: 5
start_period: 60ms
test: |
touch /tmp/healthcheck.txt &&
mkdir /tmp/healthcheck &&
mv /tmp/healthcheck.txt /tmp/healthcheck &&
cd /tmp/healthcheck &&
echo "hello my docker container is working fine" >> healthcheck.txt &&
cat healthcheck.txt &&
rm healthcheck.txt &&
cd .. &&
rmdir /tmp/healthcheck
cls
timeout: 60ms
ports:
- 8080:8080
networks:
- restapi_network
### ===================
### SWAGGER SERVICE
### ===================
doc:
build:
context: .
dockerfile: swagger/Dockerfile
restart: always
healthcheck:
interval: 120ms
retries: 5
start_period: 60ms
test: |
touch /tmp/healthcheck.txt &&
mkdir /tmp/healthcheck &&
mv /tmp/healthcheck.txt /tmp/healthcheck &&
cd /tmp/healthcheck &&
echo "hello my docker container is working fine" >> healthcheck.txt &&
cat healthcheck.txt &&
rm healthcheck.txt &&
cd .. &&
rmdir /tmp/healthcheck
cls
timeout: 60ms
environment:
- URL=http://localhost/openapi.yml
- SWAGGER_JSON=swagger/openapi.yml
ports:
- 80:8080
networks:
- restapi_network
### ========================
### VOLUMES PERSISTENT DATA
### ========================
volumes:
pg-data:
### ===================================
### NETWORKS GROUP FOR ONE SAME SERVICE
### ===================================
networks:
restapi_network: