forked from iriven/docker-webstack
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
146 lines (142 loc) · 4.44 KB
/
docker-compose.yml
File metadata and controls
146 lines (142 loc) · 4.44 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
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
133
134
135
136
137
138
139
140
141
142
143
144
145
146
version: '3.9'
services:
#--------------------------------------------------------------------------------------------------
# APP DATABASE SERVICE
#--------------------------------------------------------------------------------------------------
postgres:
container_name: dbserver_01
hostname: dbserver01
domainname: iriven.tld
image: atchondjo/postgres
restart: always
env_file:
- ./src/settings/.postgres.env
volumes:
- ./src/docker/services/postgres/data:/var/lib/postgresql/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
# networks:
# - vpcdbase
#--------------------------------------------------------------------------------------------------
# DATABASES MANAGEMENT SERVICES
#--------------------------------------------------------------------------------------------------
pgadmin:
container_name: dbserveradm_01
hostname: dbserveradm01
domainname: iriven.tld
image: atchondjo/pgadmin4
restart: always
ports:
- 81:80
env_file:
- ./src/settings/.pgadmin.env
volumes:
- ./src/docker/services/pgadmin:/var/lib/pgadmin
- ./src/docker/services/pgadmin/log:/var/log/pgadmin
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
depends_on:
- postgres
# networks:
# - vpcdbase
#--------------------------------------------------------------------------------------------------
# PHP PROCESSING SERVICE
#--------------------------------------------------------------------------------------------------
php:
container_name: webserver_01
hostname: webserver01
domainname: iriven.tld
restart: always
build:
context: ./src/docker/infra/php
expose:
- 9000
volumes:
- ./src/www/:/var/www/webroot:cached
- ./src/docker/services/php/log:/var/log
depends_on:
- postgres
healthcheck:
interval: 10s
timeout: 3s
retries: 3
start_period: 30s
env_file:
- ./src/settings/.my_app.env
- ./src/settings/.postgres.env
# networks:
# # you may set custom IP addresses
# - vpcprod
# - vpcdbase
#--------------------------------------------------------------------------------------------------
# WEB CLIENT SERVICE
#--------------------------------------------------------------------------------------------------
nginx:
container_name: proxyserver_01
hostname: proxyserver01
domainname: iriven.tld
restart: always
build:
context: ./src/docker/infra/nginx
ports:
- '80:80'
links: # seems to have no effect alone
- php
volumes:
- ./src/www/:/var/www/webroot:cached
- ./src/docker/services/nginx/log:/var/log/nginx
depends_on:
- php
- postgres
# networks:
# - vpcshared
# - vpcprod
#--------------------------------------------------------------------------------------------------
# PROJECT VOLUMES LISTING
#--------------------------------------------------------------------------------------------------
# volumes:
# pgadminvol:
# ssh-authorized-keys:
# gitlab-secret:
#--------------------------------------------------------------------------------------------------
# DOCKER CONTAINERS NETWORK LISTING
#--------------------------------------------------------------------------------------------------
# networks:
# vpcshared:
# # use the bridge driver, but enable IPv6
# driver: bridge
# driver_opts:
# com.docker.network.enable_ipv6: "true"
# ipam:
# driver: default
# config:
# - subnet: 172.16.238.0/24
# gateway: 172.16.238.1
# - subnet: "2001:3984:3989::/64"
# gateway: "2001:3984:3989::1"
# vpcprod:
# # use a custom driver, with no options
# driver: overlay
# attachable: true
# driver_opts:
# com.docker.network.enable_ipv6: "true"
# ipam:
# driver: default
# config:
# - subnet: 172.17.235.0/24
# gateway: 172.17.235.1
# - subnet: "2004:3981:3989::/64"
# gateway: "2004:3981:3989::1"
# vpcdbase:
# # use a custom driver, with no options
# driver: overlay
# attachable: true
# driver_opts:
# com.docker.network.enable_ipv6: "true"
# ipam:
# driver: default
# config:
# - subnet: 172.10.212.0/24
# gateway: 172.10.212.1
# - subnet: "2002:3086:3989::/64"
# gateway: "2002:3086:3989::1"