docker_zoo/docker-compose.dist.yml

180 lines
5.0 KiB
YAML
Raw Normal View History

2020-11-19 20:48:41 +05:00
version: '3'
services:
nginx:
image: nginx:alpine
container_name: nginx_${APP_NAME}
restart: 'no'
depends_on:
- ${PHP_HOST}
2020-11-19 20:48:41 +05:00
ports:
- ${NGINX_PORT}:80
volumes:
2020-11-29 22:13:11 +05:00
- ./docker/nginx/templates:/etc/nginx/templates
2020-11-20 09:53:34 +05:00
- ${PROJECT_DIR}:/var/www
2020-11-29 22:13:11 +05:00
environment:
WEB_ROOT: ${WEB_ROOT}
# this allows you to switch versions
# use the name of a php service presented in this file
# in your .env
PHP_HOST: ${PHP_HOST}
2020-11-19 20:48:41 +05:00
phpfpm:
build:
context: ./docker/php-fpm/
dockerfile: Dockerfile.dist
2020-11-19 20:48:41 +05:00
container_name: phpfpm_${APP_NAME}
restart: 'no'
volumes:
2020-11-20 09:53:34 +05:00
- ${PROJECT_DIR}:/var/www
2020-11-19 20:48:41 +05:00
- ./docker/php-fpm/php.ini:/etc/php/7.4/php.ini
- ./docker/php-fpm/xdebug.ini:/etc/php/7.4/mods-available/xdebug.ini
- ./docker/php-fpm/supervisor.conf:/etc/supervisor/supervisor_nodeamon.conf
- ./docker/imagick/policy.xml:/etc/ImageMagick-6/policy.xml
2020-11-29 22:13:11 +05:00
# One can add any configuration overrides.
# Just put them under ./docker/userconfigs/
# and map as following
# - ./docker/userconfigs/supervisor/conf.d:/etc/supervisor/conf.d
2020-12-19 19:08:03 +05:00
environment:
XDEBUG_PORT: ${XDEBUG_PORT}
XDEBUG_HOST: ${XDEBUG_HOST}
XDEBUG_IDE: ${XDEBUG_IDE}
working_dir: /var/www
phpfpm8:
build:
context: ./docker/php-fpm8/
dockerfile: Dockerfile.dist
container_name: phpfpm8_${APP_NAME}
restart: 'no'
volumes:
- ${PROJECT_DIR}:/var/www
- ./docker/php-fpm8/php.ini:/etc/php/8.0/php.ini
- ./docker/php-fpm8/xdebug.ini:/etc/php/8.0/mods-available/xdebug.ini
- ./docker/php-fpm8/supervisor.conf:/etc/supervisor/supervisor_nodeamon.conf
- ./docker/imagick/policy.xml:/etc/ImageMagick-6/policy.xml
# One can add any configuration overrides.
# Just put them under ./docker/userconfigs/
# and map as following
# - ./docker/userconfigs/supervisor/conf.d:/etc/supervisor/conf.d
environment:
XDEBUG_PORT: ${XDEBUG_PORT}
XDEBUG_HOST: ${XDEBUG_HOST}
XDEBUG_IDE: ${XDEBUG_IDE}
working_dir: /var/www
2020-11-19 20:48:41 +05:00
2021-12-13 00:30:01 +05:00
phpfpm81:
build:
context: ./docker/php-fpm81/
dockerfile: Dockerfile.dist
container_name: phpfpm81_${APP_NAME}
restart: 'no'
volumes:
- ${PROJECT_DIR}:/var/www
- ./docker/php-fpm81/php.ini:/etc/php/8.1/php.ini
- ./docker/php-fpm81/pools/www.conf:/etc/php/8.1/fpm/pool.d/www.conf
- ./docker/php-fpm81/xdebug.ini:/etc/php/8.1/mods-available/xdebug.ini
- ./docker/php-fpm81/supervisor.conf:/etc/supervisor/supervisor_nodeamon.conf
- ./docker/imagick/policy.xml:/etc/ImageMagick-6/policy.xml
environment:
XDEBUG_PORT: ${XDEBUG_PORT}
XDEBUG_HOST: ${XDEBUG_HOST}
XDEBUG_IDE: ${XDEBUG_IDE}
working_dir: /var/www
2020-11-19 20:48:41 +05:00
postgres:
image: postgis/postgis:13-master
2020-11-19 20:48:41 +05:00
container_name: postgis_${APP_NAME}
restart: 'no'
ports:
- ${PG_PORT}:5432
volumes:
- pgsql:/var/lib/postgresql/data
environment:
POSTGRES_PASSWORD: ${PASSWORD}
pgadmin:
image: dpage/pgadmin4:latest
restart: 'no'
container_name: pgadmin_${APP_NAME}
ports:
2020-12-19 22:46:30 +05:00
- ${PG_ADMIN_PORT}:${PG_ADMIN_PORT}
2020-11-19 20:48:41 +05:00
volumes:
- pgadmin:/var/lib/pgadmin:rw
environment:
PGADMIN_LISTEN_PORT: ${PG_ADMIN_PORT}
PGADMIN_DEFAULT_EMAIL: ${EMAIL}
PGADMIN_DEFAULT_PASSWORD: ${PASSWORD}
mysql-legacy:
image: mysql:5.7
restart: 'no'
container_name: mysql_legacy_${APP_NAME}
ports:
- ${MYSQL_LEGACY_PORT}:3306
volumes:
2020-12-19 19:08:03 +05:00
- ./docker/mysql/my.cnf:/etc/alternatives/my.cnf
- ./docker/mysql/mysql.conf.d:/etc/mysql/conf.d/
2020-11-19 20:48:41 +05:00
- mysql_legacy:/var/lib/mysql
environment:
2020-11-20 09:53:34 +05:00
MYSQL_TCP_PORT: ${MYSQL_LEGACY_PORT}
2020-11-19 20:48:41 +05:00
MYSQL_ROOT_PASSWORD: ${PASSWORD}
mysql:
image: mysql:latest
container_name: mysql_${APP_NAME}
restart: 'no'
environment:
MYSQL_TCP_PORT: ${MYSQL_PORT}
MYSQL_ROOT_PASSWORD: ${PASSWORD}
ports:
- ${MYSQL_PORT}:3306
volumes:
- mysql:/var/lib/mysql
2020-12-19 19:08:03 +05:00
- ./docker/mysql-latest:/etc/mysql/conf.d
2020-11-19 20:48:41 +05:00
rabbitmq:
2020-11-29 22:13:11 +05:00
image: rabbitmq:management-alpine
2020-11-19 20:48:41 +05:00
container_name: rabbit_${APP_NAME}
restart: 'no'
ports:
- ${RABBIT_ADMIN_PORT}:15672
- ${RABBIT_PORT}:5672
environment:
2020-12-19 19:08:03 +05:00
RABBITMQ_DEFAULT_USER: ${APP_USER}
2020-11-19 20:48:41 +05:00
RABBITMQ_DEFAULT_PASS: ${PASSWORD}
2020-11-29 22:13:11 +05:00
RABBITMQ_DEFAULT_VHOST: ${APP_NAME}
2020-11-19 20:48:41 +05:00
2021-12-13 00:17:51 +05:00
minio:
image: minio/minio
hostname: minio
container_name: minio_${APP_NAME}
restart: 'no'
ports:
- ${MINIO_ADMIN_PORT}:9001
- ${MINIO_PORT}:9000
environment:
MINIO_ROOT_USER: ${APP_USER}
MINIO_ROOT_PASSWORD: ${PASSWORD}
MINIO_REGION_NAME: ${MINIO_REGION_NAME}
volumes:
- minio:/data
command: minio server --console-address ":9001" /data
2020-11-19 20:48:41 +05:00
volumes:
pgsql:
2020-12-19 22:46:30 +05:00
name: pgsql_${APP_NAME}
external: false
2020-11-19 20:48:41 +05:00
mysql:
2020-12-19 22:46:30 +05:00
name: mysql_${APP_NAME}
external: false
2020-11-19 20:48:41 +05:00
mysql_legacy:
2020-12-19 22:46:30 +05:00
name: mysql_legacy_${APP_NAME}
external: false
2020-11-19 20:48:41 +05:00
pgadmin:
2020-12-19 22:46:30 +05:00
name: pgadmin_${APP_NAME}
external: false
2021-12-13 00:17:51 +05:00
minio:
name: minio_${APP_NAME}
external: false