You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

172 lines
5.1 KiB

version: "2"
services:
web:
image: nginx
restart: always
networks:
default:
aliases:
- loc.10ballov
volumes:
- ${PROJECTS_DIR}:/usr/share/nginx/html
- ./config/nginx/conf.d:/etc/nginx/conf.d
- ./config/nginx/includes.d:/etc/nginx/includes.d
- ./log/nginx:/var/log/nginx
ports:
- "80:80"
- "443:443"
expose:
- 80
php-fpm:
build:
context: ./dockerfiles/php-fpm
args:
- INSTALL_XDEBUG=${INSTALL_XDEBUG}
- INSTALL_REDIS=${INSTALL_REDIS}
- INSTALL_PEAR_MAIL=${INSTALL_PEAR_MAIL}
- INSTALL_ZIP=${INSTALL_ZIP}
- INSTALL_BZ2=${INSTALL_BZ2}
- INSTALL_INTL=${INSTALL_INTL}
- PHP_OPT_SHORT_OPEN_TAG=${PHP_OPT_SHORT_OPEN_TAG}
- PHP_OPT_MAX_EXECUTION_TIME=${PHP_OPT_MAX_EXECUTION_TIME}
- PHP_OPT_MEMORY_LIMIT=${PHP_OPT_MEMORY_LIMIT}
- PHP_OPT_UPLOAD_MAX_FILESIZE=${PHP_OPT_UPLOAD_MAX_FILESIZE}
restart: always
volumes:
- ${PROJECTS_DIR}:/usr/share/nginx/html
- ./tmp/php-fpm:/tmp/profiling
expose:
- 9000
php7.1-fpm:
build:
context: dockerfiles/php7.1-fpm
args:
- INSTALL_XDEBUG=${INSTALL_XDEBUG}
- INSTALL_REDIS=${INSTALL_REDIS}
- INSTALL_PEAR_MAIL=${INSTALL_PEAR_MAIL}
- INSTALL_ZIP=${INSTALL_ZIP}
- INSTALL_BZ2=${INSTALL_BZ2}
- INSTALL_INTL=${INSTALL_INTL}
- PHP_OPT_SHORT_OPEN_TAG=${PHP_OPT_SHORT_OPEN_TAG}
- PHP_OPT_MAX_EXECUTION_TIME=${PHP_OPT_MAX_EXECUTION_TIME}
- PHP_OPT_MEMORY_LIMIT=${PHP_OPT_MEMORY_LIMIT}
- PHP_OPT_UPLOAD_MAX_FILESIZE=${PHP_OPT_UPLOAD_MAX_FILESIZE}
restart: always
volumes:
- ${PROJECTS_DIR}:/usr/share/nginx/html
expose:
- 9000
workspace:
build:
context: ./dockerfiles/workspace
args:
- PHP_VERSION=${WORKSPACE_PHP_VERSION}
- PUID=${WORKSPACE_PUID}
- PGID=${WORKSPACE_PGID}
- TZ=${WORKSPACE_TIMEZONE}
- COMPOSER_VERSION=${WORKSPACE_COMPOSER_VERSION}
- COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
- COMPOSER_AUTH=${WORKSPACE_COMPOSER_AUTH}
- COMPOSER_REPO_PACKAGIST=${WORKSPACE_COMPOSER_REPO_PACKAGIST}
- INSTALL_WP_CLI=${WORKSPACE_INSTALL_WP_CLI}
- INSTALL_XDEBUG=${WORKSPACE_INSTALL_XDEBUG}
- INSTALL_SSH=${WORKSPACE_INSTALL_SSH}
- SSH_PASSPHRAZE=${WORKSPACE_SSH_PASSPHRAZE}
- INSTALL_FSWATCH=${WORKSPACE_INSTALL_FSWATCH}
- INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
- NODE_VERSION=${WORKSPACE_NODE_VERSION}
- NPM_REGISTRY=${WORKSPACE_NPM_REGISTRY}
- INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
- YARN_VERSION=${WORKSPACE_YARN_VERSION}
- INSTALL_GULP=${WORKSPACE_INSTALL_GULP}
- INSTALL_MYSQL_CLIENT=${WORKSPACE_INSTALL_MYSQL_CLIENT}
- INSTALL_PING=${WORKSPACE_INSTALL_PING}
- INSTALL_PYTHON=${WORKSPACE_INSTALL_PYTHON}
restart: always
volumes:
- ${PROJECTS_DIR}:/var/www
extra_hosts:
- "dockerhost:${DOCKER_HOST_IP}"
sphinx:
build: ./dockerfiles/sphinx
restart: always
depends_on:
- db
command: sh -c 'searchd -c /etc/sphinxsearch/sphinx.conf & sleep 10 && while true; do indexer --rotate --all; sleep 7200; done'
volumes:
- /home/dimti/docker-compose-projects/structure/config/sphinx:/etc/sphinxsearch
- /home/dimti/docker-compose-projects/structure/data/sphinx:/var/lib/sphinx/data
- /home/dimti/docker-compose-projects/structure/log/sphinx:/var/log/sphinxsearch
expose:
- "9306"
db:
build: ./dockerfiles/db
restart: always
environment:
MYSQL_ROOT_PASSWORD: 123456
volumes:
- database:/var/lib/mysql
- ./hostfiles:/hostfiles
- ./config/mariadb:/etc/mysql/conf.d
- ./log/mariadb:/var/log/mariadb
ports:
- "3306:3306"
phpmyadmin:
image: phpmyadmin/phpmyadmin
restart: always
environment:
PMA_HOST: db
PMA_USER: root
PMA_PASSWORD: 123456
ports:
- "81:80"
dbpg:
image: postgres
restart: always
environment:
POSTGRES_PASSWORD: postgres
volumes:
- databasepg:/var/lib/postgresql/data
- /data/hostfiles:/hostfiles
adminer:
image: adminer
restart: always
ports:
- 8080:8080
pgadmin:
image: dpage/pgadmin4
restart: always
environment:
PGADMIN_DEFAULT_EMAIL: info@wpstudio.ru
PGADMIN_DEFAULT_PASSWORD: postgres
ports:
- "83:80"
volumes:
- /data/hostfiles/pgadmin:/var/lib/pgadmin
redis:
image: redis
restart: always
command: [ "redis-server", "/usr/local/etc/redis/redis.conf" ]
volumes:
- ./config/redis/redis.conf:/usr/local/etc/redis/redis.conf
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.5.2
restart: always
container_name: elasticsearch
environment:
- discovery.type=single-node
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
mem_limit: 2g
volumes:
- esdata1:/usr/share/elasticsearch/data
expose:
- "9200"
- "9300"
volumes:
database:
esdata1: