@@ -3,38 +3,44 @@ version: "3.7"
33services :
44
55 nginx :
6- image : nginx:latest
6+ image : " nginx:${NGINX_VERSION} "
77 container_name : " ${DOCKER_PREFIX}-nginx"
8+ restart : always
89 ports :
9- - " 80 :80"
10+ - " ${NGINX_PORT} :80"
1011 volumes :
11- - ./docker/nginx/nginx.conf:/etc/nginx/conf.d/nginx.conf
12- - ./src:/var/www/backend
12+ - ./docker/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf
13+ - ./docker/nginx/default.template.conf:/etc/nginx/default.template
14+ - " ./src:${DOCKER_WORK_DIR}"
1315 - ./logs/nginx/:/var/log/nginx/
16+ environment :
17+ - NGINX_HOST=${NGINX_HOST}
18+ command : /bin/sh -c "envsubst '$$NGINX_HOST' < /etc/nginx/default.template > /etc/nginx/conf.d/default.conf && nginx -g 'daemon off;'"
1419 networks :
1520 - backend-network
1621
1722 redis :
18- image : redis:latest
23+ image : " redis:${REDIS_VERSION}"
24+ restart : always
1925 container_name : " ${DOCKER_PREFIX}-redis"
20- expose :
21- - " 6379"
26+ ports :
27+ - " ${REDIS_PORT}: 6379"
2228 networks :
2329 - backend-network
2430
2531 redis-commander :
26- image : rediscommander/redis-commander:latest
32+ image : " rediscommander/redis-commander:${REDIS_COMMANDER_VERSION} "
2733 container_name : " ${DOCKER_PREFIX}-redis-commander"
2834 restart : always
2935 environment :
3036 - REDIS_HOSTS=local:redis
3137 ports :
32- - " 8081 :8081"
38+ - " ${REDIS_COMMANDER_PORT} :8081"
3339 networks :
3440 - backend-network
3541
3642 mysql :
37- image : mysql:latest
43+ image : " mysql:${MYSQL_VERSION} "
3844 container_name : " ${DOCKER_PREFIX}-mysql"
3945 restart : always
4046 env_file :
@@ -45,22 +51,31 @@ services:
4551 - MYSQL_USER=${MYSQL_USER}
4652 - MYSQL_PASSWORD=${MYSQL_PASSWORD}
4753 volumes :
54+ - ./docker/mysql/data:/var/lib/mysql
4855 - ./logs/mysql/:/var/log/mysql
4956 - ./docker/mysql/conf.d:/etc/mysql/conf.d
5057 ports :
51- - " 3306 :3306"
58+ - " ${MYSQL_PORT} :3306"
5259 networks :
5360 - backend-network
5461
5562 backend :
5663 container_name : " ${DOCKER_PREFIX}-backend"
57- build : docker/backend
64+ build :
65+ context : ./docker/backend
66+ dockerfile : Dockerfile
67+ args :
68+ - WORK_DIR=${DOCKER_WORK_DIR}
69+ - XDEBUG_MODE=${XDEBUG_MODE}
70+ - XDEBUG_CLIENT_HOST=${XDEBUG_CLIENT_HOST}
71+ - XDEBUG_IDKEY=${XDEBUG_IDKEY}
72+ - XDEBUG_CLIENT_PORT=${XDEBUG_CLIENT_PORT}
73+ restart : always
5874 env_file :
5975 - .env
6076 volumes :
61- - ./src:/var/www/backend
77+ - " ./src:${DOCKER_WORK_DIR} "
6278 - ./logs/supervisor/:/var/log/supervisor/
63- - ./logs/cron/:/var/log/cron/
6479 ports :
6580 - " 9001:9001" # Access GUI with http://localhost:9001/
6681 networks :
0 commit comments