Fixing the docker-compose.yml

This commit is contained in:
ZeroC0D3 Team 2017-03-17 13:57:54 +07:00
parent d172180660
commit 8de9eca8ae
1 changed files with 263 additions and 249 deletions

View File

@ -7,8 +7,7 @@ services:
applications: applications:
image: tianon/true image: tianon/true
volumes: volumes:
- ../:/var/www - ${APPLICATION}:/var/www
# - ../sample/:/var/www/sample
### Workspace Utilities Container ########################### ### Workspace Utilities Container ###########################
@ -16,31 +15,31 @@ services:
build: build:
context: ./workspace context: ./workspace
args: args:
- INSTALL_XDEBUG=false - INSTALL_XDEBUG=${WORKSPACE_INSTALL_XDEBUG}
- INSTALL_SOAP=false - INSTALL_SOAP=${WORKSPACE_INSTALL_SOAP}
- INSTALL_MONGO=false - INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO}
- INSTALL_NODE=false - INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
- INSTALL_YARN=false - INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
- INSTALL_DRUSH=false - INSTALL_DRUSH=${WORKSPACE_INSTALL_DRUSH}
- INSTALL_AEROSPIKE_EXTENSION=false - INSTALL_AEROSPIKE_EXTENSION=${WORKSPACE_INSTALL_AEROSPIKE_EXTENSION}
- INSTALL_V8JS_EXTENSION=false - INSTALL_V8JS_EXTENSION=${WORKSPACE_INSTALL_INSTALL_V8JS_EXTENSION}
- COMPOSER_GLOBAL_INSTALL=false - COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
- INSTALL_WORKSPACE_SSH=false - INSTALL_WORKSPACE_SSH=${WORKSPACE_INSTALL_WORKSPACE_SSH}
- INSTALL_LARAVEL_ENVOY=false - INSTALL_LARAVEL_ENVOY=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
- INSTALL_DEPLOYER=false - INSTALL_DEPLOYER=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
- INSTALL_LINUXBREW=false - INSTALL_LINUXBREW=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
- PUID=1000 - INSTALL_MC=${WORKSPACE_INSTALL_MC}
- PGID=1000 - PUID=${WORKSPACE_PUID}
- NODE_VERSION=stable - PGID=${WORKSPACE_PGID}
- YARN_VERSION=latest - NODE_VERSION=${WORKSPACE_NODE_VERSION}
- TZ=UTC - YARN_VERSION=${WORKSPACE_TIMEZONE}
- TZ=${WORKSPACE_TIMEZONE}
volumes_from: volumes_from:
- applications - applications
extra_hosts: extra_hosts:
# IMPORTANT: Replace with your Docker Host IP (will be appended to /etc/hosts) - "dockerhost:${DOCKER_HOST_IP}"
- "dockerhost:10.0.75.1"
ports: ports:
- "2222:22" - "${WORKSPACE_SSH_PORT}:22"
tty: true tty: true
### PHP-FPM Container ####################################### ### PHP-FPM Container #######################################
@ -49,30 +48,30 @@ services:
build: build:
context: ./php-fpm context: ./php-fpm
args: args:
- INSTALL_XDEBUG=false - INSTALL_XDEBUG=${PHP_FPM_INSTALL_XDEBUG}
- INSTALL_SOAP=false - INSTALL_SOAP=${PHP_FPM_INSTALL_SOAP}
- INSTALL_MONGO=false - INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO}
- INSTALL_ZIP_ARCHIVE=false - INSTALL_ZIP_ARCHIVE=${PHP_FPM_INSTALL_ZIP_ARCHIVE}
- INSTALL_BCMATH=false - INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
- INSTALL_PHPREDIS=false - INSTALL_PHPREDIS=${PHP_FPM_INSTALL_PHPREDIS}
- INSTALL_MEMCACHED=false - INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
- INSTALL_OPCACHE=false - INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
- INSTALL_EXIF=false - INSTALL_EXIF=${PHP_FPM_INSTALL_EXIF}
- INSTALL_AEROSPIKE_EXTENSION=false - INSTALL_AEROSPIKE_EXTENSION=${PHP_FPM_INSTALL_AEROSPIKE_EXTENSION}
- CODEIGNITER=false - INSTALL_MYSQLI=${PHP_FPM_INSTALL_MYSQLI}
dockerfile: Dockerfile-70 - INSTALL_TOKENIZER=${PHP_FPM_INSTALL_TOKENIZER}
- INSTALL_INTL=${PHP_FPM_INSTALL_INTL}
dockerfile: ${PHP_FPM_DOCKER_FILE}
volumes_from: volumes_from:
- applications - applications
expose: expose:
- "9000" - "9000"
links: depends_on:
- workspace - workspace
extra_hosts: extra_hosts:
# IMPORTANT: Replace with your Docker Host IP (will be appended to /etc/hosts) - "dockerhost:${DOCKER_HOST_IP}"
- "dockerhost:10.0.75.1"
environment: environment:
# IMPORTANT: Set the Remote Interpreter entry matching name to `laravel` - PHP_IDE_CONFIG=${PHP_IDE_CONFIG}
- PHP_IDE_CONFIG=serverName=laravel
### Nginx Server Container ################################## ### Nginx Server Container ##################################
@ -84,12 +83,12 @@ services:
volumes_from: volumes_from:
- applications - applications
volumes: volumes:
- ./logs/nginx/:/var/log/nginx - ${NGINX_HOST_LOG_PATH}:/var/log/nginx
- ./nginx/sites/:/etc/nginx/sites-available - ${NGINX_SITES_PATH}:/etc/nginx/sites-available
ports: ports:
- "80:80" - "${NGINX_HOST_HTTP_PORT}:80"
- "443:443" - "${NGINX_HOST_HTTPS_PORT}:443"
links: depends_on:
- php-fpm - php-fpm
### Apache Server Container ################################# ### Apache Server Container #################################
@ -98,15 +97,15 @@ services:
build: build:
context: ./apache2 context: ./apache2
args: args:
- PHP_SOCKET=php-fpm:9000 - PHP_SOCKET=${PHP_SOCKET}
volumes_from: volumes_from:
- applications - applications
volumes: volumes:
- ./logs/apache2:/var/log/apache2 - ${APACHE_HOST_LOG_PATH}:/var/log/apache2
ports: ports:
- "80:80" - "${APACHE_HOST_HTTP_PORT}:80"
- "443:443" - "${APACHE_HOST_HTTPS_PORT}:443"
links: depends_on:
- php-fpm - php-fpm
### HHVM Container ########################################## ### HHVM Container ##########################################
@ -117,7 +116,7 @@ services:
- applications - applications
expose: expose:
- "9000" - "9000"
links: depends_on:
- workspace - workspace
### Minio Container ######################################### ### Minio Container #########################################
@ -127,7 +126,7 @@ services:
volumes: volumes:
- minio:/export - minio:/export
ports: ports:
- "9000:9000" - "${MINIO_PORT}:9000"
environment: environment:
MINIO_ACCESS_KEY: access MINIO_ACCESS_KEY: access
MINIO_SECRET_KEY: secretkey MINIO_SECRET_KEY: secretkey
@ -138,14 +137,14 @@ services:
build: build:
context: ./mysql context: ./mysql
args: args:
- MYSQL_DATABASE=homestead - MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_USER=homestead - MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=secret - MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_ROOT_PASSWORD=root - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
volumes: volumes:
- mysql:/var/lib/mysql - mysql:/var/lib/mysql
ports: ports:
- "3306:3306" - "${MYSQL_PORT}:3306"
### MariaDB Container ####################################### ### MariaDB Container #######################################
@ -154,12 +153,12 @@ services:
volumes: volumes:
- mariadb:/var/lib/mysql - mariadb:/var/lib/mysql
ports: ports:
- "3306:3306" - "${MARIADB_PORT}:3306"
environment: environment:
- MYSQL_DATABASE=homestead - MYSQL_DATABASE=${MARIADB_DATABASE}
- MYSQL_USER=homestead - MYSQL_USER=${MARIADB_USER}
- MYSQL_PASSWORD=secret - MYSQL_PASSWORD=${MARIADB_PASSWORD}
- MYSQL_ROOT_PASSWORD=root - MYSQL_ROOT_PASSWORD=${MARIADB_PORT}
### PostgreSQL Container #################################### ### PostgreSQL Container ####################################
@ -168,11 +167,11 @@ services:
volumes: volumes:
- postgres:/var/lib/postgresql/data - postgres:/var/lib/postgresql/data
ports: ports:
- "5432:5432" - "${POSTGRES_PORT}:5432"
environment: environment:
- POSTGRES_DB=homestead - POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_USER=homestead - POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=secret - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
### PostgreSQL PostGis Container ############################ ### PostgreSQL PostGis Container ############################
@ -181,11 +180,11 @@ services:
volumes: volumes:
- postgres:/var/lib/postgresql/data - postgres:/var/lib/postgresql/data
ports: ports:
- "5432:5432" - "${POSTGRES_PORT}:5432"
environment: environment:
- POSTGRES_DB=homestead - POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_USER=homestead - POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=secret - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
### Neo4j Container ######################################### ### Neo4j Container #########################################
@ -195,7 +194,7 @@ services:
- "7474:7474" - "7474:7474"
- "1337:1337" - "1337:1337"
environment: environment:
- NEO4J_AUTH=homestead:secret - NEO4J_AUTH=default:secret
volumes: volumes:
- neo4j:/var/lib/neo4j/data - neo4j:/var/lib/neo4j/data
@ -248,8 +247,8 @@ services:
volumes: volumes:
- memcached:/var/lib/memcached - memcached:/var/lib/memcached
ports: ports:
- "11211:11211" - "${MEMCACHED_HOST_PORT}:11211"
links: depends_on:
- php-fpm - php-fpm
### Beanstalkd Container #################################### ### Beanstalkd Container ####################################
@ -257,9 +256,9 @@ services:
beanstalkd: beanstalkd:
build: ./beanstalkd build: ./beanstalkd
ports: ports:
- "11300:11300" - "${BEANSTALKD_HOST_PORT}:11300"
privileged: true privileged: true
links: depends_on:
- php-fpm - php-fpm
### RabbitMQ Container ###################################### ### RabbitMQ Container ######################################
@ -267,14 +266,14 @@ services:
rabbitmq: rabbitmq:
build: ./rabbitmq build: ./rabbitmq
ports: ports:
- "5672:5672" - "${RABBITMQ_NODE_HOST_PORT}:5672"
- "15671:15671" - "${RABBITMQ_MANAGEMENT_HTTP_HOST_PORT}:15672"
- "8080:15672" - "${RABBITMQ_MANAGEMENT_HTTPS_HOST_PORT}:15671"
privileged: true privileged: true
environment: environment:
- RABBITMQ_DEFAULT_USER=guest - RABBITMQ_DEFAULT_USER=${RABBITMQ_DEFAULT_USER}
- RABBITMQ_DEFAULT_PASS=guest - RABBITMQ_DEFAULT_PASS=${RABBITMQ_DEFAULT_PASS}
links: depends_on:
- php-fpm - php-fpm
### Beanstalkd Console Container ############################ ### Beanstalkd Console Container ############################
@ -283,7 +282,7 @@ services:
build: ./beanstalkd-console build: ./beanstalkd-console
ports: ports:
- "2080:2080" - "2080:2080"
links: depends_on:
- beanstalkd - beanstalkd
### Caddy Server Container ################################## ### Caddy Server Container ##################################
@ -300,7 +299,7 @@ services:
- ./caddy/Caddyfile:/etc/Caddyfile - ./caddy/Caddyfile:/etc/Caddyfile
- ./logs/caddy:/var/log/caddy - ./logs/caddy:/var/log/caddy
- caddy:/root/.caddy - caddy:/root/.caddy
links: depends_on:
- php-fpm - php-fpm
### phpMyAdmin Container #################################### ### phpMyAdmin Container ####################################
@ -309,16 +308,13 @@ services:
build: ./phpmyadmin build: ./phpmyadmin
environment: environment:
- PMA_ARBITRARY=1 - PMA_ARBITRARY=1
- MYSQL_USER=homestead - MYSQL_USER=${PMA_USER}
- MYSQL_PASSWORD=secret - MYSQL_PASSWORD=${PMA_PASSWORD}
- MYSQL_ROOT_PASSWORD=root - MYSQL_ROOT_PASSWORD=${PMA_ROOT_PASSWORD}
ports: ports:
- "8080:80" - "${PMA_PORT}:80"
links: depends_on:
# for mysql container - "${PMA_DB_ENGINE}"
- "mysql:db"
# for mariadb container
# - "mariadb:db"
### pgAdmin Container ####################################### ### pgAdmin Container #######################################
@ -326,7 +322,7 @@ services:
build: ./pgadmin build: ./pgadmin
ports: ports:
- "5050:5050" - "5050:5050"
links: depends_on:
- postgres - postgres
### ElasticSearch Container ################################# ### ElasticSearch Container #################################
@ -335,21 +331,41 @@ services:
build: ./elasticsearch build: ./elasticsearch
volumes: volumes:
- elasticsearch-data:/usr/share/elasticsearch/data - elasticsearch-data:/usr/share/elasticsearch/data
- elasticsearch-plugins:/usr/share/elasticsearch/data - elasticsearch-plugins:/usr/share/elasticsearch/plugins
ports: ports:
- "9200:9200" - "${ELASTICSEARCH_HOST_HTTP_PORT}:9200"
- "9300:9300" - "${ELASTICSEARCH_HOST_TRANSPORT_PORT}:9300"
links: depends_on:
- php-fpm - php-fpm
### Certbot Container ##################################
certbot:
build:
context: ./certbot
volumes:
- ./data/certbot/certs/:/var/certs
- ./certbot/letsencrypt/:/var/www/letsencrypt
environment:
- CN="fake.domain.com"
- EMAIL="fake.email@gmail.com"
### Mailhog Container #########################################
mailhog:
build: ./mailhog
ports:
- "1025:1025"
- "8025:8025"
### Selenium Container ######################################### ### Selenium Container #########################################
selenium: selenium:
build: ./selenium build: ./selenium
ports: ports:
- "4444:4444" - "${SELENIUM_PORT}:4444"
volumes: volumes:
# see https://github.com/SeleniumHQ/docker-selenium#running-the-images
- /dev/shm:/dev/shm - /dev/shm:/dev/shm
### Volumes Setup ########################################### ### Volumes Setup ###########################################
@ -383,5 +399,3 @@ volumes:
driver: "local" driver: "local"
elasticsearch-plugins: elasticsearch-plugins:
driver: "local" driver: "local"
sessions: ## nothing is connected to this (- ./data/sessions:/sessions)
driver: "local"