@@ -7,42 +7,39 @@ services:
77 applications :
88 image : tianon/true
99 volumes :
10- - ../:/var/www
11- # - ../sample/:/var/www/sample
10+ - ${APPLICATIONS_HOST_DIR}:/var/www
1211
1312# ## Workspace Utilities Container ###########################
1413
1514 workspace :
1615 build :
1716 context : ./workspace
18- args :
19- - INSTALL_XDEBUG=false
20- - INSTALL_SOAP=false
21- - INSTALL_MONGO=false
22- - INSTALL_NODE=false
23- - INSTALL_YARN=false
24- - INSTALL_DRUSH=false
25- - INSTALL_AEROSPIKE_EXTENSION=false
26- - INSTALL_V8JS_EXTENSION=false
27- - COMPOSER_GLOBAL_INSTALL=false
28- - INSTALL_WORKSPACE_SSH=false
29- - INSTALL_LARAVEL_ENVOY=false
30- - INSTALL_DEPLOYER=false
31- - INSTALL_LINUXBREW=false
32- - INSTALL_MC=false
33- - PUID=1000
34- - PGID=1000
35- - NODE_VERSION=stable
36- - YARN_VERSION=latest
37- - TZ=UTC
38- # dockerfile: Dockerfile-71
17+ args :
18+ - INSTALL_XDEBUG=${WORKSPACE_INSTALL_XDEBUG}
19+ - INSTALL_SOAP=${WORKSPACE_INSTALL_SOAP}
20+ - INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO}
21+ - INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
22+ - INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
23+ - INSTALL_DRUSH=${WORKSPACE_INSTALL_DRUSH}
24+ - INSTALL_AEROSPIKE_EXTENSION=${WORKSPACE_INSTALL_AEROSPIKE_EXTENSION}
25+ - INSTALL_V8JS_EXTENSION=${WORKSPACE_INSTALL_INSTALL_V8JS_EXTENSION}
26+ - COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
27+ - INSTALL_WORKSPACE_SSH=${WORKSPACE_INSTALL_WORKSPACE_SSH}
28+ - INSTALL_LARAVEL_ENVOY=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
29+ - INSTALL_DEPLOYER=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
30+ - INSTALL_LINUXBREW=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
31+ - INSTALL_MC=${WORKSPACE_INSTALL_MC}
32+ - PUID=${WORKSPACE_PUID}
33+ - PGID=${WORKSPACE_PGID}
34+ - NODE_VERSION=${WORKSPACE_NODE_VERSION}
35+ - YARN_VERSION=${WORKSPACE_TIMEZONE}
36+ - TZ=${WORKSPACE_TIMEZONE}
3937 volumes_from :
4038 - applications
4139 extra_hosts :
42- # IMPORTANT: Replace with your Docker Host IP (will be appended to /etc/hosts)
43- - " dockerhost:10.0.75.1"
40+ - " dockerhost:${DOCKER_HOST_IP}"
4441 ports :
45- - " 2222 :22"
42+ - " ${WORKSPACE_SSH_PORT} :22"
4643 tty : true
4744
4845# ## PHP-FPM Container #######################################
@@ -51,31 +48,29 @@ services:
5148 build :
5249 context : ./php-fpm
5350 args :
54- - INSTALL_XDEBUG=false
55- - INSTALL_SOAP=false
56- - INSTALL_MONGO=false
57- - INSTALL_ZIP_ARCHIVE=false
58- - INSTALL_BCMATH=false
59- - INSTALL_PHPREDIS=false
60- - INSTALL_MEMCACHED=false
61- - INSTALL_OPCACHE=false
62- - INSTALL_EXIF=false
63- - INSTALL_AEROSPIKE_EXTENSION=false
64- - CODEIGNITER=false
65- - GHOSTSCRIPT=false
66- dockerfile : Dockerfile-70
51+ - INSTALL_XDEBUG=${PHP_FPM_INSTALL_XDEBUG}
52+ - INSTALL_SOAP=${PHP_FPM_INSTALL_SOAP}
53+ - INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO}
54+ - INSTALL_ZIP_ARCHIVE=${PHP_FPM_INSTALL_ZIP_ARCHIVE}
55+ - INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
56+ - INSTALL_PHPREDIS=${PHP_FPM_INSTALL_PHPREDIS}
57+ - INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
58+ - INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
59+ - INSTALL_EXIF=${PHP_FPM_INSTALL_EXIF}
60+ - INSTALL_AEROSPIKE_EXTENSION=${PHP_FPM_INSTALL_AEROSPIKE_EXTENSION}
61+ - INSTALL_MYSQLI=${PHP_FPM_INSTALL_MYSQLI}
62+ - INSTALL_TOKENIZER=${PHP_FPM_INSTALL_TOKENIZER}
63+ dockerfile : ${PHP_FPM_DOCKER_FILE}
6764 volumes_from :
6865 - applications
6966 expose :
7067 - " 9000"
7168 depends_on :
7269 - workspace
7370 extra_hosts :
74- # IMPORTANT: Replace with your Docker Host IP (will be appended to /etc/hosts)
75- - " dockerhost:10.0.75.1"
71+ - " dockerhost:${DOCKER_HOST_IP}"
7672 environment :
77- # IMPORTANT: Set the Remote Interpreter entry matching name to `laravel`
78- - PHP_IDE_CONFIG=serverName=laravel
73+ - PHP_IDE_CONFIG=${PHP_IDE_CONFIG}
7974
8075# ## Nginx Server Container ##################################
8176
@@ -86,12 +81,12 @@ services:
8681 - PHP_UPSTREAM=php-fpm
8782 volumes_from :
8883 - applications
89- volumes :
90- - ./logs/nginx/ :/var/log/nginx
91- - ./nginx/sites/ :/etc/nginx/sites-available
84+ volumes :
85+ - ${NGINX_HOST_LOG_PATH} :/var/log/nginx
86+ - ${NGINX_SITES_PATH} :/etc/nginx/sites-available
9287 ports :
93- - " 80 :80"
94- - " 443 :443"
88+ - " ${NGINX_HOST_HTTP_PORT} :80"
89+ - " ${NGINX_HOST_HTTPS_PORT} :443"
9590 depends_on :
9691 - php-fpm
9792
@@ -101,14 +96,14 @@ services:
10196 build :
10297 context : ./apache2
10398 args :
104- - PHP_SOCKET=php-fpm:9000
99+ - PHP_SOCKET=${PHP_SOCKET}
105100 volumes_from :
106101 - applications
107102 volumes :
108- - ./logs/apache2 :/var/log/apache2
103+ - ${APACHE_HOST_LOG_PATH} :/var/log/apache2
109104 ports :
110- - " 80 :80"
111- - " 443 :443"
105+ - " ${APACHE_HOST_HTTP_PORT} :80"
106+ - " ${APACHE_HOST_HTTPS_PORT} :443"
112107 depends_on :
113108 - php-fpm
114109
@@ -130,7 +125,7 @@ services:
130125 volumes :
131126 - minio:/export
132127 ports :
133- - " 9000 :9000"
128+ - " ${MINIO_PORT} :9000"
134129 environment :
135130 MINIO_ACCESS_KEY : access
136131 MINIO_SECRET_KEY : secretkey
@@ -141,14 +136,14 @@ services:
141136 build :
142137 context : ./mysql
143138 args :
144- - MYSQL_DATABASE=homestead
145- - MYSQL_USER=homestead
146- - MYSQL_PASSWORD=secret
147- - MYSQL_ROOT_PASSWORD=root
139+ - MYSQL_DATABASE=${MYSQL_DATABASE}
140+ - MYSQL_USER=${MYSQL_USER}
141+ - MYSQL_PASSWORD=${MYSQL_PASSWORD}
142+ - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
148143 volumes :
149144 - mysql:/var/lib/mysql
150145 ports :
151- - " 3306 :3306"
146+ - " ${MYSQL_PORT} :3306"
152147
153148# ## MariaDB Container #######################################
154149
@@ -157,12 +152,12 @@ services:
157152 volumes :
158153 - mariadb:/var/lib/mysql
159154 ports :
160- - " 3306 :3306"
155+ - " ${MARIADB_PORT} :3306"
161156 environment :
162- MYSQL_DATABASE : homestead
163- MYSQL_USER : homestead
164- MYSQL_PASSWORD : secret
165- MYSQL_ROOT_PASSWORD : root
157+ MYSQL_DATABASE : ${MARIADB_DATABASE}
158+ MYSQL_USER : ${MARIADB_USER}
159+ MYSQL_PASSWORD : ${MARIADB_PASSWORD}
160+ MYSQL_ROOT_PASSWORD : ${MARIADB_PORT}
166161
167162# ## PostgreSQL Container ####################################
168163
@@ -171,11 +166,11 @@ services:
171166 volumes :
172167 - postgres:/var/lib/postgresql/data
173168 ports :
174- - " 5432 :5432"
169+ - " ${POSTGRES_PORT} :5432"
175170 environment :
176- POSTGRES_DB : homestead
177- POSTGRES_USER : homestead
178- POSTGRES_PASSWORD : secret
171+ POSTGRES_DB : ${POSTGRES_DB}
172+ POSTGRES_USER : ${POSTGRES_USER}
173+ POSTGRES_PASSWORD : ${POSTGRES_PASSWORD}
179174
180175# ## PostgreSQL PostGis Container ############################
181176
@@ -184,11 +179,11 @@ services:
184179 volumes :
185180 - postgres:/var/lib/postgresql/data
186181 ports :
187- - " 5432 :5432"
182+ - " ${POSTGRES_PORT} :5432"
188183 environment :
189- POSTGRES_DB : homestead
190- POSTGRES_USER : homestead
191- POSTGRES_PASSWORD : secret
184+ POSTGRES_DB : ${POSTGRES_DB}
185+ POSTGRES_USER : ${POSTGRES_USER}
186+ POSTGRES_PASSWORD : ${POSTGRES_PASSWORD}
192187
193188# ## Neo4j Container #########################################
194189
@@ -198,7 +193,7 @@ services:
198193 - " 7474:7474"
199194 - " 1337:1337"
200195 environment :
201- - NEO4J_AUTH=homestead :secret
196+ - NEO4J_AUTH=default :secret
202197 volumes :
203198 - neo4j:/var/lib/neo4j/data
204199
@@ -251,7 +246,7 @@ services:
251246 volumes :
252247 - memcached:/var/lib/memcached
253248 ports :
254- - " 11211 :11211"
249+ - " ${MEMCACHED_HOST_PORT} :11211"
255250 depends_on :
256251 - php-fpm
257252
@@ -260,7 +255,7 @@ services:
260255 beanstalkd :
261256 build : ./beanstalkd
262257 ports :
263- - " 11300 :11300"
258+ - " ${BEANSTALKD_HOST_PORT} :11300"
264259 privileged : true
265260 depends_on :
266261 - php-fpm
@@ -270,13 +265,13 @@ services:
270265 rabbitmq :
271266 build : ./rabbitmq
272267 ports :
273- - " 5672 :5672"
274- - " 15671:15671 "
275- - " 8080:15672 "
268+ - " ${RABBITMQ_NODE_HOST_PORT} :5672"
269+ - " ${RABBITMQ_MANAGEMENT_HTTP_HOST_PORT}:15672 "
270+ - " ${RABBITMQ_MANAGEMENT_HTTPS_HOST_PORT}:15671 "
276271 privileged : true
277272 environment :
278- RABBITMQ_DEFAULT_USER : guest
279- RABBITMQ_DEFAULT_PASS : guest
273+ RABBITMQ_DEFAULT_USER : ${RABBITMQ_DEFAULT_USER}
274+ RABBITMQ_DEFAULT_PASS : ${RABBITMQ_DEFAULT_PASS}
280275 depends_on :
281276 - php-fpm
282277
@@ -312,16 +307,13 @@ services:
312307 build : ./phpmyadmin
313308 environment :
314309 PMA_ARBITRARY : 1
315- MYSQL_USER : homestead
316- MYSQL_PASSWORD : secret
317- MYSQL_ROOT_PASSWORD : root
310+ MYSQL_USER : ${PMA_USER}
311+ MYSQL_PASSWORD : ${PMA_PASSWORD}
312+ MYSQL_ROOT_PASSWORD : ${PMA_ROOT_PASSWORD}
318313 ports :
319- - " 8080 :80"
314+ - " ${PMA_PORT} :80"
320315 depends_on :
321- # for mysql container
322- - " mysql"
323- # for mariadb container
324- # - "mariadb"
316+ - " ${PMA_DB_ENGINE}"
325317
326318# ## pgAdmin Container #######################################
327319
@@ -340,8 +332,8 @@ services:
340332 - elasticsearch-data:/usr/share/elasticsearch/data
341333 - elasticsearch-plugins:/usr/share/elasticsearch/plugins
342334 ports :
343- - " 9200 :9200"
344- - " 9300 :9300"
335+ - " ${ELASTICSEARCH_HOST_HTTP_PORT} :9200"
336+ - " ${ELASTICSEARCH_HOST_TRANSPORT_PORT} :9300"
345337 depends_on :
346338 - php-fpm
347339
@@ -370,9 +362,8 @@ services:
370362 selenium :
371363 build : ./selenium
372364 ports :
373- - " 4444 :4444"
365+ - " ${SELENIUM_PORT} :4444"
374366 volumes :
375- # see https://github.com/SeleniumHQ/docker-selenium#running-the-images
376367 - /dev/shm:/dev/shm
377368
378369# ## Volumes Setup ###########################################
@@ -406,5 +397,3 @@ volumes:
406397 driver : " local"
407398 elasticsearch-plugins :
408399 driver : " local"
409- sessions : # # nothing is connected to this (- ./data/sessions:/sessions)
410- driver : " local"
0 commit comments