@@ -2,44 +2,56 @@ version: "3.5"
22
33# ## Networks ###
44networks :
5- default : {}
5+ mysql-net : {}
6+ proxy-net : {}
67
78# ## Volumes ###
89volumes :
9- db-data : {}
10+ mysql-vol : {}
1011
1112# ## Services ###
1213services :
1314
1415 # ## Mysql service ###
15- db :
16- image : mysql:5.7
16+ mysql :
17+ image : mysql:8.0
18+ command :
19+ - mysqld
20+ - --character-set-server=utf8mb4
21+ - --collation-server=utf8mb4_unicode_ci
1722 environment :
18- MYSQL_ROOT_PASSWORD : rootpass
19- MYSQL_DATABASE : ${DB_NAME }
20- MYSQL_USER : ${DB_USER }
21- MYSQL_PASSWORD : ${DB_PASS }
23+ MYSQL_ROOT_PASSWORD : ${MYSQL_ROOT_PASSWORD:- rootpass}
24+ MYSQL_USER : ${DB_USERNAME }
25+ MYSQL_PASSWORD : ${DB_PASSWORD }
26+ MYSQL_DATABASE : ${DB_DATABASE }
2227 networks :
23- - default
24- ports :
25- - 3306:3306
28+ - mysql-net
29+ # ports:
30+ # - 3306:3306
2631 restart : unless-stopped
2732 volumes :
28- - db-data:/var/lib/mysql
29- # - init-db:/docker-entrypoint-initdb.d
33+ - mysql-vol:/var/lib/mysql
34+ # - ./initdb:/docker-entrypoint-initdb.d:ro
35+ healthcheck :
36+ test : MYSQL_PWD=$$MYSQL_PASSWORD mysqladmin -u $$MYSQL_USER --silent ping
37+ start_period : 2s
38+ interval : 1s
39+ timeout : 3s
40+ retries : 10
3041
3142 # ## Wordpress service ###
3243 wp :
44+ image : wordpress_app
3345 build :
3446 context : ./docker/wordpress
3547 dockerfile : Dockerfile
3648 depends_on :
37- - db
49+ - mysql
3850 environment :
39- WORDPRESS_DB_NAME : ${DB_NAME }
40- WORDPRESS_DB_USER : ${DB_USER }
41- WORDPRESS_DB_PASSWORD : ${DB_PASS }
42- WORDPRESS_DB_HOST : db
51+ WORDPRESS_DB_NAME : ${DB_DATABASE }
52+ WORDPRESS_DB_USER : ${DB_USERNAME }
53+ WORDPRESS_DB_PASSWORD : ${DB_PASSWORD }
54+ WORDPRESS_DB_HOST : mysql
4355 WORDPRESS_DB_CHARSET : utf8
4456 # WORDPRESS_DB_COLLATE:
4557 WORDPRESS_TABLE_PREFIX : wp_
@@ -53,7 +65,8 @@ services:
5365 # WORDPRESS_NONCE_SALT:
5466 WORDPRESS_DEBUG : 1
5567 networks :
56- - default
68+ - mysql-net
69+ - proxy-net
5770 restart : unless-stopped
5871 volumes :
5972 - ./docker/wordpress/php.ini:/usr/local/etc/php/conf.d/dev.ini:ro
@@ -62,16 +75,19 @@ services:
6275 # ## Web service ###
6376 web :
6477 image : nginx:stable-alpine
65- # build:
66- # context: ./docker/nginx
67- # dockerfile: Dockerfile
6878 depends_on :
6979 - wp
7080 networks :
71- - default
81+ - proxy-net
7282 restart : unless-stopped
7383 ports :
7484 - 80:80
7585 volumes :
76- - ./docker/nginx/default.conf:/etc/nginx/conf.d /default.conf:ro
86+ - ./docker/nginx/default.conf:/etc/nginx/templates /default.conf.template :ro
7787 - ./app:/var/www/html
88+ healthcheck :
89+ test : curl --fail --silent http://127.0.0.1/_health/nginx || exit 1
90+ start_period : 2s
91+ interval : 1s
92+ timeout : 3s
93+ retries : 10
0 commit comments