|
@@ -1,4 +1,4 @@
|
|
-version: '3'
|
|
|
|
|
|
+version: '3.5'
|
|
|
|
|
|
networks:
|
|
networks:
|
|
frontend:
|
|
frontend:
|
|
@@ -37,6 +37,8 @@ volumes:
|
|
driver: ${VOLUMES_DRIVER}
|
|
driver: ${VOLUMES_DRIVER}
|
|
caddy:
|
|
caddy:
|
|
driver: ${VOLUMES_DRIVER}
|
|
driver: ${VOLUMES_DRIVER}
|
|
|
|
+ meilisearch:
|
|
|
|
+ driver: ${VOLUMES_DRIVER}
|
|
elasticsearch:
|
|
elasticsearch:
|
|
driver: ${VOLUMES_DRIVER}
|
|
driver: ${VOLUMES_DRIVER}
|
|
mosquitto:
|
|
mosquitto:
|
|
@@ -49,7 +51,9 @@ volumes:
|
|
driver: ${VOLUMES_DRIVER}
|
|
driver: ${VOLUMES_DRIVER}
|
|
graylog:
|
|
graylog:
|
|
driver: ${VOLUMES_DRIVER}
|
|
driver: ${VOLUMES_DRIVER}
|
|
- dind:
|
|
|
|
|
|
+ docker-in-docker:
|
|
|
|
+ driver: ${VOLUMES_DRIVER}
|
|
|
|
+ react:
|
|
driver: ${VOLUMES_DRIVER}
|
|
driver: ${VOLUMES_DRIVER}
|
|
|
|
|
|
services:
|
|
services:
|
|
@@ -60,19 +64,26 @@ services:
|
|
context: ./workspace
|
|
context: ./workspace
|
|
args:
|
|
args:
|
|
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
|
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
|
|
|
+ - SHELL_OH_MY_ZSH=${SHELL_OH_MY_ZSH}
|
|
|
|
+ - SHELL_OH_MY_ZSH_AUTOSUGESTIONS=${SHELL_OH_MY_ZSH_AUTOSUGESTIONS}
|
|
|
|
+ - SHELL_OH_MY_ZSH_ALIASES=${SHELL_OH_MY_ZSH_ALIASES}
|
|
- UBUNTU_SOURCE=${UBUNTU_SOURCE}
|
|
- UBUNTU_SOURCE=${UBUNTU_SOURCE}
|
|
|
|
+ - BASE_IMAGE_TAG_PREFIX=${WORKSPACE_BASE_IMAGE_TAG_PREFIX}
|
|
- LARADOCK_PHP_VERSION=${PHP_VERSION}
|
|
- LARADOCK_PHP_VERSION=${PHP_VERSION}
|
|
- LARADOCK_PHALCON_VERSION=${PHALCON_VERSION}
|
|
- LARADOCK_PHALCON_VERSION=${PHALCON_VERSION}
|
|
- INSTALL_SUBVERSION=${WORKSPACE_INSTALL_SUBVERSION}
|
|
- INSTALL_SUBVERSION=${WORKSPACE_INSTALL_SUBVERSION}
|
|
|
|
+ - INSTALL_BZ2=${WORKSPACE_INSTALL_BZ2}
|
|
|
|
+ - INSTALL_GMP=${WORKSPACE_INSTALL_GMP}
|
|
|
|
+ - INSTALL_GNUPG=${WORKSPACE_INSTALL_GNUPG}
|
|
- INSTALL_XDEBUG=${WORKSPACE_INSTALL_XDEBUG}
|
|
- INSTALL_XDEBUG=${WORKSPACE_INSTALL_XDEBUG}
|
|
- INSTALL_PCOV=${WORKSPACE_INSTALL_PCOV}
|
|
- INSTALL_PCOV=${WORKSPACE_INSTALL_PCOV}
|
|
- INSTALL_PHPDBG=${WORKSPACE_INSTALL_PHPDBG}
|
|
- INSTALL_PHPDBG=${WORKSPACE_INSTALL_PHPDBG}
|
|
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
|
|
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
|
|
- INSTALL_SSH2=${WORKSPACE_INSTALL_SSH2}
|
|
- INSTALL_SSH2=${WORKSPACE_INSTALL_SSH2}
|
|
- - INSTALL_GMP=${WORKSPACE_INSTALL_GMP}
|
|
|
|
- INSTALL_SOAP=${WORKSPACE_INSTALL_SOAP}
|
|
- INSTALL_SOAP=${WORKSPACE_INSTALL_SOAP}
|
|
- INSTALL_XSL=${WORKSPACE_INSTALL_XSL}
|
|
- INSTALL_XSL=${WORKSPACE_INSTALL_XSL}
|
|
- INSTALL_LDAP=${WORKSPACE_INSTALL_LDAP}
|
|
- INSTALL_LDAP=${WORKSPACE_INSTALL_LDAP}
|
|
|
|
+ - INSTALL_SMB=${WORKSPACE_INSTALL_SMB}
|
|
- INSTALL_IMAP=${WORKSPACE_INSTALL_IMAP}
|
|
- INSTALL_IMAP=${WORKSPACE_INSTALL_IMAP}
|
|
- INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO}
|
|
- INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO}
|
|
- INSTALL_AMQP=${WORKSPACE_INSTALL_AMQP}
|
|
- INSTALL_AMQP=${WORKSPACE_INSTALL_AMQP}
|
|
@@ -83,6 +94,11 @@ services:
|
|
- NVM_NODEJS_ORG_MIRROR=${WORKSPACE_NVM_NODEJS_ORG_MIRROR}
|
|
- NVM_NODEJS_ORG_MIRROR=${WORKSPACE_NVM_NODEJS_ORG_MIRROR}
|
|
- INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
|
|
- INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
|
|
- NPM_REGISTRY=${WORKSPACE_NPM_REGISTRY}
|
|
- NPM_REGISTRY=${WORKSPACE_NPM_REGISTRY}
|
|
|
|
+ - NPM_FETCH_RETRIES=${WORKSPACE_NPM_FETCH_RETRIES}
|
|
|
|
+ - NPM_FETCH_RETRY_FACTOR=${WORKSPACE_NPM_FETCH_RETRY_FACTOR}
|
|
|
|
+ - NPM_FETCH_RETRY_MINTIMEOUT=${WORKSPACE_NPM_FETCH_RETRY_MINTIMEOUT}
|
|
|
|
+ - NPM_FETCH_RETRY_MAXTIMEOUT=${WORKSPACE_NPM_FETCH_RETRY_MAXTIMEOUT}
|
|
|
|
+ - INSTALL_PNPM=${WORKSPACE_INSTALL_PNPM}
|
|
- INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
|
|
- INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
|
|
- INSTALL_NPM_GULP=${WORKSPACE_INSTALL_NPM_GULP}
|
|
- INSTALL_NPM_GULP=${WORKSPACE_INSTALL_NPM_GULP}
|
|
- INSTALL_NPM_BOWER=${WORKSPACE_INSTALL_NPM_BOWER}
|
|
- INSTALL_NPM_BOWER=${WORKSPACE_INSTALL_NPM_BOWER}
|
|
@@ -95,6 +111,7 @@ services:
|
|
- INSTALL_OCI8=${WORKSPACE_INSTALL_OCI8}
|
|
- INSTALL_OCI8=${WORKSPACE_INSTALL_OCI8}
|
|
- INSTALL_V8JS=${WORKSPACE_INSTALL_V8JS}
|
|
- INSTALL_V8JS=${WORKSPACE_INSTALL_V8JS}
|
|
- COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
|
|
- COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
|
|
|
|
+ - COMPOSER_VERSION=${WORKSPACE_COMPOSER_VERSION}
|
|
- COMPOSER_AUTH=${WORKSPACE_COMPOSER_AUTH}
|
|
- COMPOSER_AUTH=${WORKSPACE_COMPOSER_AUTH}
|
|
- COMPOSER_REPO_PACKAGIST=${WORKSPACE_COMPOSER_REPO_PACKAGIST}
|
|
- COMPOSER_REPO_PACKAGIST=${WORKSPACE_COMPOSER_REPO_PACKAGIST}
|
|
- INSTALL_WORKSPACE_SSH=${WORKSPACE_INSTALL_WORKSPACE_SSH}
|
|
- INSTALL_WORKSPACE_SSH=${WORKSPACE_INSTALL_WORKSPACE_SSH}
|
|
@@ -106,6 +123,7 @@ services:
|
|
- INSTALL_MC=${WORKSPACE_INSTALL_MC}
|
|
- INSTALL_MC=${WORKSPACE_INSTALL_MC}
|
|
- INSTALL_SYMFONY=${WORKSPACE_INSTALL_SYMFONY}
|
|
- INSTALL_SYMFONY=${WORKSPACE_INSTALL_SYMFONY}
|
|
- INSTALL_PYTHON=${WORKSPACE_INSTALL_PYTHON}
|
|
- INSTALL_PYTHON=${WORKSPACE_INSTALL_PYTHON}
|
|
|
|
+ - INSTALL_PYTHON3=${WORKSPACE_INSTALL_PYTHON3}
|
|
- INSTALL_IMAGE_OPTIMIZERS=${WORKSPACE_INSTALL_IMAGE_OPTIMIZERS}
|
|
- INSTALL_IMAGE_OPTIMIZERS=${WORKSPACE_INSTALL_IMAGE_OPTIMIZERS}
|
|
- INSTALL_IMAGEMAGICK=${WORKSPACE_INSTALL_IMAGEMAGICK}
|
|
- INSTALL_IMAGEMAGICK=${WORKSPACE_INSTALL_IMAGEMAGICK}
|
|
- INSTALL_TERRAFORM=${WORKSPACE_INSTALL_TERRAFORM}
|
|
- INSTALL_TERRAFORM=${WORKSPACE_INSTALL_TERRAFORM}
|
|
@@ -115,6 +133,7 @@ services:
|
|
- INSTALL_SWOOLE=${WORKSPACE_INSTALL_SWOOLE}
|
|
- INSTALL_SWOOLE=${WORKSPACE_INSTALL_SWOOLE}
|
|
- INSTALL_TAINT=${WORKSPACE_INSTALL_TAINT}
|
|
- INSTALL_TAINT=${WORKSPACE_INSTALL_TAINT}
|
|
- INSTALL_LIBPNG=${WORKSPACE_INSTALL_LIBPNG}
|
|
- INSTALL_LIBPNG=${WORKSPACE_INSTALL_LIBPNG}
|
|
|
|
+ - INSTALL_GRAPHVIZ=${WORKSPACE_INSTALL_GRAPHVIZ}
|
|
- INSTALL_IONCUBE=${WORKSPACE_INSTALL_IONCUBE}
|
|
- INSTALL_IONCUBE=${WORKSPACE_INSTALL_IONCUBE}
|
|
- INSTALL_MYSQL_CLIENT=${WORKSPACE_INSTALL_MYSQL_CLIENT}
|
|
- INSTALL_MYSQL_CLIENT=${WORKSPACE_INSTALL_MYSQL_CLIENT}
|
|
- INSTALL_PING=${WORKSPACE_INSTALL_PING}
|
|
- INSTALL_PING=${WORKSPACE_INSTALL_PING}
|
|
@@ -123,7 +142,10 @@ services:
|
|
- INSTALL_FSWATCH=${WORKSPACE_INSTALL_FSWATCH}
|
|
- INSTALL_FSWATCH=${WORKSPACE_INSTALL_FSWATCH}
|
|
- INSTALL_AST=${WORKSPACE_INSTALL_AST}
|
|
- INSTALL_AST=${WORKSPACE_INSTALL_AST}
|
|
- INSTALL_YAML=${WORKSPACE_INSTALL_YAML}
|
|
- INSTALL_YAML=${WORKSPACE_INSTALL_YAML}
|
|
|
|
+ - INSTALL_RDKAFKA=${WORKSPACE_INSTALL_RDKAFKA}
|
|
- INSTALL_MAILPARSE=${WORKSPACE_INSTALL_MAILPARSE}
|
|
- INSTALL_MAILPARSE=${WORKSPACE_INSTALL_MAILPARSE}
|
|
|
|
+ - INSTALL_GIT_PROMPT=${WORKSPACE_INSTALL_GIT_PROMPT}
|
|
|
|
+ - INSTALL_XMLRPC=${WORKSPACE_INSTALL_XMLRPC}
|
|
- PUID=${WORKSPACE_PUID}
|
|
- PUID=${WORKSPACE_PUID}
|
|
- PGID=${WORKSPACE_PGID}
|
|
- PGID=${WORKSPACE_PGID}
|
|
- CHROME_DRIVER_VERSION=${WORKSPACE_CHROME_DRIVER_VERSION}
|
|
- CHROME_DRIVER_VERSION=${WORKSPACE_CHROME_DRIVER_VERSION}
|
|
@@ -131,27 +153,43 @@ services:
|
|
- YARN_VERSION=${WORKSPACE_YARN_VERSION}
|
|
- YARN_VERSION=${WORKSPACE_YARN_VERSION}
|
|
- DRUSH_VERSION=${WORKSPACE_DRUSH_VERSION}
|
|
- DRUSH_VERSION=${WORKSPACE_DRUSH_VERSION}
|
|
- AST_VERSION=${WORKSPACE_AST_VERSION}
|
|
- AST_VERSION=${WORKSPACE_AST_VERSION}
|
|
|
|
+ - IMAGEMAGICK_VERSION=${WORKSPACE_IMAGEMAGICK_VERSION}
|
|
- TZ=${WORKSPACE_TIMEZONE}
|
|
- TZ=${WORKSPACE_TIMEZONE}
|
|
- BLACKFIRE_CLIENT_ID=${BLACKFIRE_CLIENT_ID}
|
|
- BLACKFIRE_CLIENT_ID=${BLACKFIRE_CLIENT_ID}
|
|
- BLACKFIRE_CLIENT_TOKEN=${BLACKFIRE_CLIENT_TOKEN}
|
|
- BLACKFIRE_CLIENT_TOKEN=${BLACKFIRE_CLIENT_TOKEN}
|
|
- INSTALL_POWERLINE=${WORKSPACE_INSTALL_POWERLINE}
|
|
- INSTALL_POWERLINE=${WORKSPACE_INSTALL_POWERLINE}
|
|
- INSTALL_SUPERVISOR=${WORKSPACE_INSTALL_SUPERVISOR}
|
|
- INSTALL_SUPERVISOR=${WORKSPACE_INSTALL_SUPERVISOR}
|
|
- INSTALL_FFMPEG=${WORKSPACE_INSTALL_FFMPEG}
|
|
- INSTALL_FFMPEG=${WORKSPACE_INSTALL_FFMPEG}
|
|
|
|
+ - INSTALL_AUDIOWAVEFORM=${WORKSPACE_INSTALL_AUDIOWAVEFORM}
|
|
|
|
+ - INSTALL_WKHTMLTOPDF=${WORKSPACE_INSTALL_WKHTMLTOPDF}
|
|
- INSTALL_GNU_PARALLEL=${WORKSPACE_INSTALL_GNU_PARALLEL}
|
|
- INSTALL_GNU_PARALLEL=${WORKSPACE_INSTALL_GNU_PARALLEL}
|
|
|
|
+ - INSTALL_LNAV=${WORKSPACE_INSTALL_LNAV}
|
|
|
|
+ - INSTALL_PROTOC=${WORKSPACE_INSTALL_PROTOC}
|
|
|
|
+ - PROTOC_VERSION=${WORKSPACE_PROTOC_VERSION}
|
|
|
|
+ - INSTALL_DOCKER_CLIENT=${WORKSPACE_INSTALL_DOCKER_CLIENT}
|
|
- http_proxy
|
|
- http_proxy
|
|
- https_proxy
|
|
- https_proxy
|
|
- no_proxy
|
|
- no_proxy
|
|
volumes:
|
|
volumes:
|
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
|
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
|
|
|
|
+ - docker-in-docker:/certs/client
|
|
- ./php-worker/supervisord.d:/etc/supervisord.d
|
|
- ./php-worker/supervisord.d:/etc/supervisord.d
|
|
extra_hosts:
|
|
extra_hosts:
|
|
- "dockerhost:${DOCKER_HOST_IP}"
|
|
- "dockerhost:${DOCKER_HOST_IP}"
|
|
ports:
|
|
ports:
|
|
- "${WORKSPACE_SSH_PORT}:22"
|
|
- "${WORKSPACE_SSH_PORT}:22"
|
|
|
|
+ - "${WORKSPACE_BROWSERSYNC_HOST_PORT}:3000"
|
|
|
|
+ - "${WORKSPACE_BROWSERSYNC_UI_HOST_PORT}:3001"
|
|
|
|
+ - "${WORKSPACE_VUE_CLI_SERVE_HOST_PORT}:8080"
|
|
|
|
+ - "${WORKSPACE_VUE_CLI_UI_HOST_PORT}:8000"
|
|
|
|
+ - "${WORKSPACE_ANGULAR_CLI_SERVE_HOST_PORT}:4200"
|
|
tty: true
|
|
tty: true
|
|
environment:
|
|
environment:
|
|
- PHP_IDE_CONFIG=${PHP_IDE_CONFIG}
|
|
- PHP_IDE_CONFIG=${PHP_IDE_CONFIG}
|
|
- - DOCKER_HOST=tcp://docker-in-docker:2375
|
|
|
|
|
|
+ - DOCKER_HOST=tcp://docker-in-docker:2376
|
|
|
|
+ - DOCKER_TLS_VERIFY=1
|
|
|
|
+ - DOCKER_TLS_CERTDIR=/certs
|
|
|
|
+ - DOCKER_CERT_PATH=/certs/client
|
|
networks:
|
|
networks:
|
|
- frontend
|
|
- frontend
|
|
- backend
|
|
- backend
|
|
@@ -164,8 +202,12 @@ services:
|
|
context: ./php-fpm
|
|
context: ./php-fpm
|
|
args:
|
|
args:
|
|
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
|
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
|
|
|
+ - BASE_IMAGE_TAG_PREFIX=${PHP_FPM_BASE_IMAGE_TAG_PREFIX}
|
|
- LARADOCK_PHP_VERSION=${PHP_VERSION}
|
|
- LARADOCK_PHP_VERSION=${PHP_VERSION}
|
|
- LARADOCK_PHALCON_VERSION=${PHALCON_VERSION}
|
|
- LARADOCK_PHALCON_VERSION=${PHALCON_VERSION}
|
|
|
|
+ - INSTALL_BZ2=${PHP_FPM_INSTALL_BZ2}
|
|
|
|
+ - INSTALL_GMP=${PHP_FPM_INSTALL_GMP}
|
|
|
|
+ - INSTALL_GNUPG=${PHP_FPM_INSTALL_GNUPG}
|
|
- INSTALL_XDEBUG=${PHP_FPM_INSTALL_XDEBUG}
|
|
- INSTALL_XDEBUG=${PHP_FPM_INSTALL_XDEBUG}
|
|
- INSTALL_PCOV=${PHP_FPM_INSTALL_PCOV}
|
|
- INSTALL_PCOV=${PHP_FPM_INSTALL_PCOV}
|
|
- INSTALL_PHPDBG=${PHP_FPM_INSTALL_PHPDBG}
|
|
- INSTALL_PHPDBG=${PHP_FPM_INSTALL_PHPDBG}
|
|
@@ -173,6 +215,7 @@ services:
|
|
- INSTALL_SSH2=${PHP_FPM_INSTALL_SSH2}
|
|
- INSTALL_SSH2=${PHP_FPM_INSTALL_SSH2}
|
|
- INSTALL_SOAP=${PHP_FPM_INSTALL_SOAP}
|
|
- INSTALL_SOAP=${PHP_FPM_INSTALL_SOAP}
|
|
- INSTALL_XSL=${PHP_FPM_INSTALL_XSL}
|
|
- INSTALL_XSL=${PHP_FPM_INSTALL_XSL}
|
|
|
|
+ - INSTALL_SMB=${PHP_FPM_INSTALL_SMB}
|
|
- INSTALL_IMAP=${PHP_FPM_INSTALL_IMAP}
|
|
- INSTALL_IMAP=${PHP_FPM_INSTALL_IMAP}
|
|
- INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO}
|
|
- INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO}
|
|
- INSTALL_AMQP=${PHP_FPM_INSTALL_AMQP}
|
|
- INSTALL_AMQP=${PHP_FPM_INSTALL_AMQP}
|
|
@@ -180,7 +223,6 @@ services:
|
|
- INSTALL_GEARMAN=${PHP_FPM_INSTALL_GEARMAN}
|
|
- INSTALL_GEARMAN=${PHP_FPM_INSTALL_GEARMAN}
|
|
- INSTALL_MSSQL=${PHP_FPM_INSTALL_MSSQL}
|
|
- INSTALL_MSSQL=${PHP_FPM_INSTALL_MSSQL}
|
|
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
|
|
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
|
|
- - INSTALL_GMP=${PHP_FPM_INSTALL_GMP}
|
|
|
|
- INSTALL_PHPREDIS=${PHP_FPM_INSTALL_PHPREDIS}
|
|
- INSTALL_PHPREDIS=${PHP_FPM_INSTALL_PHPREDIS}
|
|
- INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
|
|
- INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
|
|
- INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
|
|
- INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
|
|
@@ -215,23 +257,38 @@ services:
|
|
- INSTALL_PCNTL=${PHP_FPM_INSTALL_PCNTL}
|
|
- INSTALL_PCNTL=${PHP_FPM_INSTALL_PCNTL}
|
|
- ADDITIONAL_LOCALES=${PHP_FPM_ADDITIONAL_LOCALES}
|
|
- ADDITIONAL_LOCALES=${PHP_FPM_ADDITIONAL_LOCALES}
|
|
- INSTALL_FFMPEG=${PHP_FPM_FFMPEG}
|
|
- INSTALL_FFMPEG=${PHP_FPM_FFMPEG}
|
|
|
|
+ - INSTALL_AUDIOWAVEFORM=${PHP_FPM_AUDIOWAVEFORM}
|
|
|
|
+ - INSTALL_WKHTMLTOPDF=${PHP_FPM_INSTALL_WKHTMLTOPDF}
|
|
- INSTALL_XHPROF=${PHP_FPM_INSTALL_XHPROF}
|
|
- INSTALL_XHPROF=${PHP_FPM_INSTALL_XHPROF}
|
|
|
|
+ - INSTALL_XMLRPC=${PHP_FPM_INSTALL_XMLRPC}
|
|
|
|
+ - DOWNGRADE_OPENSSL_TLS_AND_SECLEVEL=${PHP_DOWNGRADE_OPENSSL_TLS_AND_SECLEVEL}
|
|
- PUID=${PHP_FPM_PUID}
|
|
- PUID=${PHP_FPM_PUID}
|
|
- PGID=${PHP_FPM_PGID}
|
|
- PGID=${PHP_FPM_PGID}
|
|
|
|
+ - IMAGEMAGICK_VERSION=${PHP_FPM_IMAGEMAGICK_VERSION}
|
|
- LOCALE=${PHP_FPM_DEFAULT_LOCALE}
|
|
- LOCALE=${PHP_FPM_DEFAULT_LOCALE}
|
|
|
|
+ - PHP_FPM_NEW_RELIC=${PHP_FPM_NEW_RELIC}
|
|
|
|
+ - PHP_FPM_NEW_RELIC_KEY=${PHP_FPM_NEW_RELIC_KEY}
|
|
|
|
+ - PHP_FPM_NEW_RELIC_APP_NAME=${PHP_FPM_NEW_RELIC_APP_NAME}
|
|
|
|
+ - INSTALL_DOCKER_CLIENT=${PHP_FPM_INSTALL_DOCKER_CLIENT}
|
|
- http_proxy
|
|
- http_proxy
|
|
- https_proxy
|
|
- https_proxy
|
|
- no_proxy
|
|
- no_proxy
|
|
volumes:
|
|
volumes:
|
|
- ./php-fpm/php${PHP_VERSION}.ini:/usr/local/etc/php/php.ini
|
|
- ./php-fpm/php${PHP_VERSION}.ini:/usr/local/etc/php/php.ini
|
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
|
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
|
|
|
|
+ - docker-in-docker:/certs/client
|
|
|
|
+ ports:
|
|
|
|
+ - "${PHP_FPM_XDEBUG_PORT}:9003"
|
|
expose:
|
|
expose:
|
|
- "9000"
|
|
- "9000"
|
|
extra_hosts:
|
|
extra_hosts:
|
|
- "dockerhost:${DOCKER_HOST_IP}"
|
|
- "dockerhost:${DOCKER_HOST_IP}"
|
|
environment:
|
|
environment:
|
|
- PHP_IDE_CONFIG=${PHP_IDE_CONFIG}
|
|
- PHP_IDE_CONFIG=${PHP_IDE_CONFIG}
|
|
- - DOCKER_HOST=tcp://docker-in-docker:2375
|
|
|
|
|
|
+ - DOCKER_HOST=tcp://docker-in-docker:2376
|
|
|
|
+ - DOCKER_TLS_VERIFY=1
|
|
|
|
+ - DOCKER_TLS_CERTDIR=/certs
|
|
|
|
+ - DOCKER_CERT_PATH=/certs/client
|
|
- FAKETIME=${PHP_FPM_FAKETIME}
|
|
- FAKETIME=${PHP_FPM_FAKETIME}
|
|
depends_on:
|
|
depends_on:
|
|
- workspace
|
|
- workspace
|
|
@@ -246,10 +303,17 @@ services:
|
|
context: ./php-worker
|
|
context: ./php-worker
|
|
args:
|
|
args:
|
|
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
|
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
|
- - PHP_VERSION=${PHP_VERSION}
|
|
|
|
|
|
+ - LARADOCK_PHP_VERSION=${PHP_VERSION}
|
|
- PHALCON_VERSION=${PHALCON_VERSION}
|
|
- PHALCON_VERSION=${PHALCON_VERSION}
|
|
|
|
+ - INSTALL_BZ2=${PHP_WORKER_INSTALL_BZ2}
|
|
|
|
+ - INSTALL_GD=${PHP_WORKER_INSTALL_GD}
|
|
|
|
+ - INSTALL_IMAGEMAGICK=${PHP_WORKER_INSTALL_IMAGEMAGICK}
|
|
|
|
+ - INSTALL_GMP=${PHP_WORKER_INSTALL_GMP}
|
|
|
|
+ - INSTALL_GNUPG=${PHP_WORKER_INSTALL_GNUPG}
|
|
- INSTALL_PGSQL=${PHP_WORKER_INSTALL_PGSQL}
|
|
- INSTALL_PGSQL=${PHP_WORKER_INSTALL_PGSQL}
|
|
|
|
+ - INSTALL_MONGO=${PHP_WORKER_INSTALL_MONGO}
|
|
- INSTALL_BCMATH=${PHP_WORKER_INSTALL_BCMATH}
|
|
- INSTALL_BCMATH=${PHP_WORKER_INSTALL_BCMATH}
|
|
|
|
+ - INSTALL_OCI8=${PHP_WORKER_INSTALL_OCI8}
|
|
- INSTALL_PHALCON=${PHP_WORKER_INSTALL_PHALCON}
|
|
- INSTALL_PHALCON=${PHP_WORKER_INSTALL_PHALCON}
|
|
- INSTALL_SOAP=${PHP_WORKER_INSTALL_SOAP}
|
|
- INSTALL_SOAP=${PHP_WORKER_INSTALL_SOAP}
|
|
- INSTALL_ZIP_ARCHIVE=${PHP_WORKER_INSTALL_ZIP_ARCHIVE}
|
|
- INSTALL_ZIP_ARCHIVE=${PHP_WORKER_INSTALL_ZIP_ARCHIVE}
|
|
@@ -261,10 +325,13 @@ services:
|
|
- INSTALL_SWOOLE=${PHP_WORKER_INSTALL_SWOOLE}
|
|
- INSTALL_SWOOLE=${PHP_WORKER_INSTALL_SWOOLE}
|
|
- INSTALL_TAINT=${PHP_WORKER_INSTALL_TAINT}
|
|
- INSTALL_TAINT=${PHP_WORKER_INSTALL_TAINT}
|
|
- INSTALL_FFMPEG=${PHP_WORKER_INSTALL_FFMPEG}
|
|
- INSTALL_FFMPEG=${PHP_WORKER_INSTALL_FFMPEG}
|
|
- - INSTALL_GMP=${PHP_WORKER_INSTALL_GMP}
|
|
|
|
|
|
+ - INSTALL_AUDIOWAVEFORM=${PHP_WORKER_INSTALL_AUDIOWAVEFORM}
|
|
- INSTALL_REDIS=${PHP_WORKER_INSTALL_REDIS}
|
|
- INSTALL_REDIS=${PHP_WORKER_INSTALL_REDIS}
|
|
|
|
+ - INSTALL_IMAP=${PHP_WORKER_INSTALL_IMAP}
|
|
|
|
+ - INSTALL_XMLRPC=${PHP_WORKER_INSTALL_XMLRPC}
|
|
- PUID=${PHP_WORKER_PUID}
|
|
- PUID=${PHP_WORKER_PUID}
|
|
- PGID=${PHP_WORKER_PGID}
|
|
- PGID=${PHP_WORKER_PGID}
|
|
|
|
+ - IMAGEMAGICK_VERSION=${PHP_WORKER_IMAGEMAGICK_VERSION}
|
|
volumes:
|
|
volumes:
|
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
|
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
|
|
- ./php-worker/supervisord.d:/etc/supervisord.d
|
|
- ./php-worker/supervisord.d:/etc/supervisord.d
|
|
@@ -280,14 +347,26 @@ services:
|
|
context: ./laravel-horizon
|
|
context: ./laravel-horizon
|
|
args:
|
|
args:
|
|
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
|
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
|
- - PHP_VERSION=${PHP_VERSION}
|
|
|
|
|
|
+ - LARADOCK_PHP_VERSION=${PHP_VERSION}
|
|
|
|
+ - INSTALL_BZ2=${LARAVEL_HORIZON_INSTALL_BZ2}
|
|
|
|
+ - INSTALL_GD=${LARAVEL_HORIZON_INSTALL_GD}
|
|
|
|
+ - INSTALL_GMP=${LARAVEL_HORIZON_INSTALL_GMP}
|
|
|
|
+ - INSTALL_GNUPG=${LARAVEL_HORIZON_INSTALL_GNUPG}
|
|
|
|
+ - INSTALL_IMAGEMAGICK=${LARAVEL_HORIZON_INSTALL_IMAGEMAGICK}
|
|
- INSTALL_PGSQL=${PHP_FPM_INSTALL_PGSQL}
|
|
- INSTALL_PGSQL=${PHP_FPM_INSTALL_PGSQL}
|
|
|
|
+ - INSTALL_ZIP_ARCHIVE=${LARAVEL_HORIZON_INSTALL_ZIP_ARCHIVE}
|
|
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
|
|
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
|
|
- INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
|
|
- INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
|
|
- INSTALL_SOCKETS=${LARAVEL_HORIZON_INSTALL_SOCKETS}
|
|
- INSTALL_SOCKETS=${LARAVEL_HORIZON_INSTALL_SOCKETS}
|
|
- - INSTALL_CASSANDRA=${PHP_FPM_INSTALL_CASSANDRA}
|
|
|
|
|
|
+ - INSTALL_YAML=${LARAVEL_HORIZON_INSTALL_YAML}
|
|
|
|
+ - INSTALL_CASSANDRA=${LARAVEL_HORIZON_INSTALL_CASSANDRA}
|
|
- INSTALL_PHPREDIS=${LARAVEL_HORIZON_INSTALL_PHPREDIS}
|
|
- INSTALL_PHPREDIS=${LARAVEL_HORIZON_INSTALL_PHPREDIS}
|
|
- INSTALL_MONGO=${LARAVEL_HORIZON_INSTALL_MONGO}
|
|
- INSTALL_MONGO=${LARAVEL_HORIZON_INSTALL_MONGO}
|
|
|
|
+ - INSTALL_FFMPEG=${LARAVEL_HORIZON_INSTALL_FFMPEG}
|
|
|
|
+ - INSTALL_AUDIOWAVEFORM=${LARAVEL_HORIZON_INSTALL_AUDIOWAVEFORM}
|
|
|
|
+ - PUID=${LARAVEL_HORIZON_PUID}
|
|
|
|
+ - PGID=${LARAVEL_HORIZON_PGID}
|
|
|
|
+ - IMAGEMAGICK_VERSION=${LARAVEL_HORIZON_IMAGEMAGICK_VERSION}
|
|
volumes:
|
|
volumes:
|
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
|
- ./laravel-horizon/supervisord.d:/etc/supervisord.d
|
|
- ./laravel-horizon/supervisord.d:/etc/supervisord.d
|
|
@@ -317,6 +396,7 @@ services:
|
|
ports:
|
|
ports:
|
|
- "${NGINX_HOST_HTTP_PORT}:80"
|
|
- "${NGINX_HOST_HTTP_PORT}:80"
|
|
- "${NGINX_HOST_HTTPS_PORT}:443"
|
|
- "${NGINX_HOST_HTTPS_PORT}:443"
|
|
|
|
+ - "${VARNISH_BACKEND_PORT}:81"
|
|
depends_on:
|
|
depends_on:
|
|
- php-fpm
|
|
- php-fpm
|
|
networks:
|
|
networks:
|
|
@@ -343,6 +423,7 @@ services:
|
|
- PHP_UPSTREAM_PORT=${APACHE_PHP_UPSTREAM_PORT}
|
|
- PHP_UPSTREAM_PORT=${APACHE_PHP_UPSTREAM_PORT}
|
|
- PHP_UPSTREAM_TIMEOUT=${APACHE_PHP_UPSTREAM_TIMEOUT}
|
|
- PHP_UPSTREAM_TIMEOUT=${APACHE_PHP_UPSTREAM_TIMEOUT}
|
|
- DOCUMENT_ROOT=${APACHE_DOCUMENT_ROOT}
|
|
- DOCUMENT_ROOT=${APACHE_DOCUMENT_ROOT}
|
|
|
|
+ - APACHE_INSTALL_HTTP2=${APACHE_INSTALL_HTTP2}
|
|
volumes:
|
|
volumes:
|
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
|
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
|
|
- ${APACHE_HOST_LOG_PATH}:/var/log/apache2
|
|
- ${APACHE_HOST_LOG_PATH}:/var/log/apache2
|
|
@@ -463,7 +544,10 @@ services:
|
|
|
|
|
|
### PostgreSQL ###########################################
|
|
### PostgreSQL ###########################################
|
|
postgres:
|
|
postgres:
|
|
- build: ./postgres
|
|
|
|
|
|
+ build:
|
|
|
|
+ context: ./postgres
|
|
|
|
+ args:
|
|
|
|
+ - POSTGRES_VERSION=${POSTGRES_VERSION}
|
|
volumes:
|
|
volumes:
|
|
- ${DATA_PATH_HOST}/postgres:/var/lib/postgresql/data
|
|
- ${DATA_PATH_HOST}/postgres:/var/lib/postgresql/data
|
|
- ${POSTGRES_ENTRYPOINT_INITDB}:/docker-entrypoint-initdb.d
|
|
- ${POSTGRES_ENTRYPOINT_INITDB}:/docker-entrypoint-initdb.d
|
|
@@ -508,14 +592,15 @@ services:
|
|
|
|
|
|
### Neo4j ################################################
|
|
### Neo4j ################################################
|
|
neo4j:
|
|
neo4j:
|
|
- build: ./neo4j
|
|
|
|
ports:
|
|
ports:
|
|
- - "7474:7474"
|
|
|
|
- - "1337:1337"
|
|
|
|
|
|
+ - '7401:7474'
|
|
|
|
+ - '7402:7687'
|
|
environment:
|
|
environment:
|
|
- - NEO4J_AUTH=default:secret
|
|
|
|
|
|
+ - NEO4J_AUTH=none
|
|
volumes:
|
|
volumes:
|
|
- - ${DATA_PATH_HOST}/neo4j:/var/lib/neo4j/data
|
|
|
|
|
|
+ - ${DATA_PATH_HOST}/neo4j/data:/data
|
|
|
|
+ - ${DATA_PATH_HOST}/neo4j/logs:/logs
|
|
|
|
+ image: 'neo4j:latest'
|
|
networks:
|
|
networks:
|
|
- backend
|
|
- backend
|
|
|
|
|
|
@@ -540,7 +625,38 @@ services:
|
|
networks:
|
|
networks:
|
|
- backend
|
|
- backend
|
|
|
|
|
|
-### Redis ################################################
|
|
|
|
|
|
+ ### ClickHouse #############################################
|
|
|
|
+ clickhouse:
|
|
|
|
+ build:
|
|
|
|
+ context: ./clickhouse
|
|
|
|
+ args:
|
|
|
|
+ - CLICKHOUSE_VERSION=${CLICKHOUSE_VERSION}
|
|
|
|
+ - CLICKHOUSE_GOSU_VERSION=${CLICKHOUSE_GOSU_VERSION}
|
|
|
|
+ environment:
|
|
|
|
+ - CLICKHOUSE_USER=${CLICKHOUSE_USER}
|
|
|
|
+ - CLICKHOUSE_PASSWORD=${CLICKHOUSE_PASSWORD}
|
|
|
|
+ volumes:
|
|
|
|
+ - ${DATA_PATH_HOST}/clickhouse:/var/lib/clickhouse
|
|
|
|
+ - ${CLICKHOUSE_CUSTOM_CONFIG}:/etc/clickhouse-server/config.xml
|
|
|
|
+ - ${CLICKHOUSE_USERS_CUSTOM_CONFIG}:/etc/clickhouse-server/users.xml
|
|
|
|
+ - ${CLICKHOUSE_HOST_LOG_PATH}:/var/log/clickhouse
|
|
|
|
+ - ${CLICKHOUSE_ENTRYPOINT_INITDB}:/docker-entrypoint-initdb.d
|
|
|
|
+ links:
|
|
|
|
+ - workspace
|
|
|
|
+ ports:
|
|
|
|
+ - "${CLICKHOUSE_HTTP_PORT}:8123"
|
|
|
|
+ - "${CLICKHOUSE_CLIENT_PORT}:9000"
|
|
|
|
+ - "${CLICKHOUSE_NATIVE_PORT}:9009"
|
|
|
|
+ ulimits:
|
|
|
|
+ nproc: 65535
|
|
|
|
+ nofile:
|
|
|
|
+ soft: 262144
|
|
|
|
+ hard: 262144
|
|
|
|
+ networks:
|
|
|
|
+# - frontend
|
|
|
|
+ - backend
|
|
|
|
+
|
|
|
|
+ ### Redis ################################################
|
|
redis:
|
|
redis:
|
|
build: ./redis
|
|
build: ./redis
|
|
volumes:
|
|
volumes:
|
|
@@ -610,6 +726,20 @@ services:
|
|
networks:
|
|
networks:
|
|
- backend
|
|
- backend
|
|
|
|
|
|
|
|
+### SQS #############################################
|
|
|
|
+ sqs:
|
|
|
|
+ build: ./sqs
|
|
|
|
+ ports:
|
|
|
|
+ - "${SQS_NODE_HOST_PORT}:9324"
|
|
|
|
+ - "${SQS_MANAGEMENT_HTTP_HOST_PORT}:9325"
|
|
|
|
+ privileged: true
|
|
|
|
+ hostname: laradock-sqs
|
|
|
|
+ volumes:
|
|
|
|
+ - ${DATA_PATH_HOST}/sqs:/opt/custom
|
|
|
|
+ networks:
|
|
|
|
+ - frontend
|
|
|
|
+ - backend
|
|
|
|
+
|
|
### RabbitMQ #############################################
|
|
### RabbitMQ #############################################
|
|
rabbitmq:
|
|
rabbitmq:
|
|
build: ./rabbitmq
|
|
build: ./rabbitmq
|
|
@@ -629,6 +759,24 @@ services:
|
|
networks:
|
|
networks:
|
|
- backend
|
|
- backend
|
|
|
|
|
|
|
|
+### Mercure #############################################
|
|
|
|
+ mercure:
|
|
|
|
+ build: ./mercure
|
|
|
|
+ ports:
|
|
|
|
+ - "${MERCURE_NODE_HOST_HTTP_PORT}:80"
|
|
|
|
+ - "${MERCURE_NODE_HOST_HTTPS_PORT}:443"
|
|
|
|
+ privileged: true
|
|
|
|
+ environment:
|
|
|
|
+ - MERCURE_PUBLISHER_JWT_KEY=${MERCURE_PUBLISHER_JWT_KEY}
|
|
|
|
+ - MERCURE_SUBSCRIBER_JWT_KEY=${MERCURE_SUBSCRIBER_JWT_KEY}
|
|
|
|
+ - DEBUG=${MERCURE_DEBUG}
|
|
|
|
+ - SERVER_NAME=${MERCURE_SERVER_NAME}
|
|
|
|
+ - MERCURE_EXTRA_DIRECTIVES=cors_allowed_origins *\npublish_allowed_origins http://localhost:${MERCURE_NODE_HOST_HTTP_PORT} https://localhost:${MERCURE_NODE_HOST_HTTP_PORT}
|
|
|
|
+ hostname: laradock-mercure
|
|
|
|
+ networks:
|
|
|
|
+ - frontend
|
|
|
|
+ - backend
|
|
|
|
+
|
|
### Cassandra ############################################
|
|
### Cassandra ############################################
|
|
cassandra:
|
|
cassandra:
|
|
build: ./cassandra
|
|
build: ./cassandra
|
|
@@ -729,6 +877,9 @@ services:
|
|
- MYSQL_USER=${PMA_USER}
|
|
- MYSQL_USER=${PMA_USER}
|
|
- MYSQL_PASSWORD=${PMA_PASSWORD}
|
|
- MYSQL_PASSWORD=${PMA_PASSWORD}
|
|
- MYSQL_ROOT_PASSWORD=${PMA_ROOT_PASSWORD}
|
|
- MYSQL_ROOT_PASSWORD=${PMA_ROOT_PASSWORD}
|
|
|
|
+ - MAX_EXECUTION_TIME=${PMA_MAX_EXECUTION_TIME}
|
|
|
|
+ - MEMORY_LIMIT=${PMA_MEMORY_LIMIT}
|
|
|
|
+ - UPLOAD_LIMIT=${PMA_UPLOAD_LIMIT}
|
|
ports:
|
|
ports:
|
|
- "${PMA_PORT}:80"
|
|
- "${PMA_PORT}:80"
|
|
depends_on:
|
|
depends_on:
|
|
@@ -743,6 +894,10 @@ services:
|
|
context: ./adminer
|
|
context: ./adminer
|
|
args:
|
|
args:
|
|
- INSTALL_MSSQL=${ADM_INSTALL_MSSQL}
|
|
- INSTALL_MSSQL=${ADM_INSTALL_MSSQL}
|
|
|
|
+ environment:
|
|
|
|
+ - ADMINER_PLUGINS=${ADM_PLUGINS}
|
|
|
|
+ - ADMINER_DESIGN=${ADM_DESIGN}
|
|
|
|
+ - ADMINER_DEFAULT_SERVER=${ADM_DEFAULT_SERVER}
|
|
ports:
|
|
ports:
|
|
- "${ADM_PORT}:8080"
|
|
- "${ADM_PORT}:8080"
|
|
depends_on:
|
|
depends_on:
|
|
@@ -767,9 +922,23 @@ services:
|
|
- frontend
|
|
- frontend
|
|
- backend
|
|
- backend
|
|
|
|
|
|
|
|
+### MeiliSearch ##########################################
|
|
|
|
+ meilisearch:
|
|
|
|
+ image: getmeili/meilisearch:latest
|
|
|
|
+ volumes:
|
|
|
|
+ - ${DATA_PATH_HOST}/meilisearch:/var/lib/meilisearch
|
|
|
|
+ ports:
|
|
|
|
+ - "${MEILISEARCH_HOST_PORT}:7700"
|
|
|
|
+ networks:
|
|
|
|
+ - frontend
|
|
|
|
+ - backend
|
|
|
|
+
|
|
### ElasticSearch ########################################
|
|
### ElasticSearch ########################################
|
|
elasticsearch:
|
|
elasticsearch:
|
|
- build: ./elasticsearch
|
|
|
|
|
|
+ build:
|
|
|
|
+ context: ./elasticsearch
|
|
|
|
+ args:
|
|
|
|
+ - ELK_VERSION=${ELK_VERSION}
|
|
volumes:
|
|
volumes:
|
|
- elasticsearch:/usr/share/elasticsearch/data
|
|
- elasticsearch:/usr/share/elasticsearch/data
|
|
environment:
|
|
environment:
|
|
@@ -782,6 +951,9 @@ services:
|
|
memlock:
|
|
memlock:
|
|
soft: -1
|
|
soft: -1
|
|
hard: -1
|
|
hard: -1
|
|
|
|
+ nofile:
|
|
|
|
+ soft: 65536
|
|
|
|
+ hard: 65536
|
|
ports:
|
|
ports:
|
|
- "${ELASTICSEARCH_HOST_HTTP_PORT}:9200"
|
|
- "${ELASTICSEARCH_HOST_HTTP_PORT}:9200"
|
|
- "${ELASTICSEARCH_HOST_TRANSPORT_PORT}:9300"
|
|
- "${ELASTICSEARCH_HOST_TRANSPORT_PORT}:9300"
|
|
@@ -793,7 +965,10 @@ services:
|
|
|
|
|
|
### Logstash ##############################################
|
|
### Logstash ##############################################
|
|
logstash:
|
|
logstash:
|
|
- build: ./logstash
|
|
|
|
|
|
+ build:
|
|
|
|
+ context: ./logstash
|
|
|
|
+ args:
|
|
|
|
+ - ELK_VERSION=${ELK_VERSION}
|
|
volumes:
|
|
volumes:
|
|
- './logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml'
|
|
- './logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml'
|
|
- './logstash/pipeline:/usr/share/logstash/pipeline'
|
|
- './logstash/pipeline:/usr/share/logstash/pipeline'
|
|
@@ -811,7 +986,10 @@ services:
|
|
|
|
|
|
### Kibana ##############################################
|
|
### Kibana ##############################################
|
|
kibana:
|
|
kibana:
|
|
- build: ./kibana
|
|
|
|
|
|
+ build:
|
|
|
|
+ context: ./kibana
|
|
|
|
+ args:
|
|
|
|
+ - ELK_VERSION=${ELK_VERSION}
|
|
ports:
|
|
ports:
|
|
- "${KIBANA_HTTP_PORT}:5601"
|
|
- "${KIBANA_HTTP_PORT}:5601"
|
|
depends_on:
|
|
depends_on:
|
|
@@ -820,6 +998,18 @@ services:
|
|
- frontend
|
|
- frontend
|
|
- backend
|
|
- backend
|
|
|
|
|
|
|
|
+### Dejavu ##############################################
|
|
|
|
+ dejavu:
|
|
|
|
+ build:
|
|
|
|
+ context: ./dejavu
|
|
|
|
+ ports:
|
|
|
|
+ - "${DEJAVU_HTTP_PORT}:1358"
|
|
|
|
+ depends_on:
|
|
|
|
+ - elasticsearch
|
|
|
|
+ networks:
|
|
|
|
+ - frontend
|
|
|
|
+ - backend
|
|
|
|
+
|
|
### Certbot #########################################
|
|
### Certbot #########################################
|
|
certbot:
|
|
certbot:
|
|
build:
|
|
build:
|
|
@@ -833,6 +1023,16 @@ services:
|
|
networks:
|
|
networks:
|
|
- frontend
|
|
- frontend
|
|
|
|
|
|
|
|
+### MailCatcher ################################################
|
|
|
|
+ mailcatcher:
|
|
|
|
+ build: ./mailcatcher
|
|
|
|
+ ports:
|
|
|
|
+ - "1025:1025"
|
|
|
|
+ - "1080:1080"
|
|
|
|
+ networks:
|
|
|
|
+ - frontend
|
|
|
|
+ - backend
|
|
|
|
+
|
|
### Mailhog ################################################
|
|
### Mailhog ################################################
|
|
mailhog:
|
|
mailhog:
|
|
build: ./mailhog
|
|
build: ./mailhog
|
|
@@ -865,6 +1065,7 @@ services:
|
|
|
|
|
|
### Varnish ##########################################
|
|
### Varnish ##########################################
|
|
proxy:
|
|
proxy:
|
|
|
|
+ container_name: proxy
|
|
build: ./varnish
|
|
build: ./varnish
|
|
expose:
|
|
expose:
|
|
- ${VARNISH_PORT}
|
|
- ${VARNISH_PORT}
|
|
@@ -876,12 +1077,15 @@ services:
|
|
- BACKEND_HOST=${VARNISH_PROXY1_BACKEND_HOST}
|
|
- BACKEND_HOST=${VARNISH_PROXY1_BACKEND_HOST}
|
|
- BACKEND_PORT=${VARNISH_BACKEND_PORT}
|
|
- BACKEND_PORT=${VARNISH_BACKEND_PORT}
|
|
- VARNISH_SERVER=${VARNISH_PROXY1_SERVER}
|
|
- VARNISH_SERVER=${VARNISH_PROXY1_SERVER}
|
|
|
|
+ ports:
|
|
|
|
+ - "${VARNISH_PORT}:${VARNISH_PORT}"
|
|
links:
|
|
links:
|
|
- workspace
|
|
- workspace
|
|
networks:
|
|
networks:
|
|
- frontend
|
|
- frontend
|
|
|
|
|
|
proxy2:
|
|
proxy2:
|
|
|
|
+ container_name: proxy2
|
|
build: ./varnish
|
|
build: ./varnish
|
|
expose:
|
|
expose:
|
|
- ${VARNISH_PORT}
|
|
- ${VARNISH_PORT}
|
|
@@ -893,6 +1097,8 @@ services:
|
|
- BACKEND_HOST=${VARNISH_PROXY2_BACKEND_HOST}
|
|
- BACKEND_HOST=${VARNISH_PROXY2_BACKEND_HOST}
|
|
- BACKEND_PORT=${VARNISH_BACKEND_PORT}
|
|
- BACKEND_PORT=${VARNISH_BACKEND_PORT}
|
|
- VARNISH_SERVER=${VARNISH_PROXY2_SERVER}
|
|
- VARNISH_SERVER=${VARNISH_PROXY2_SERVER}
|
|
|
|
+ ports:
|
|
|
|
+ - "${VARNISH_PORT}:${VARNISH_PORT}"
|
|
links:
|
|
links:
|
|
- workspace
|
|
- workspace
|
|
networks:
|
|
networks:
|
|
@@ -938,38 +1144,40 @@ services:
|
|
|
|
|
|
### Graylog #######################################
|
|
### Graylog #######################################
|
|
graylog:
|
|
graylog:
|
|
- build: ./graylog
|
|
|
|
- environment:
|
|
|
|
- - GRAYLOG_PASSWORD_SECRET=${GRAYLOG_PASSWORD}
|
|
|
|
- - GRAYLOG_ROOT_PASSWORD_SHA2=${GRAYLOG_SHA256_PASSWORD}
|
|
|
|
- - GRAYLOG_HTTP_EXTERNAL_URI=http://127.0.0.1:${GRAYLOG_PORT}/
|
|
|
|
- links:
|
|
|
|
- - mongo
|
|
|
|
- - elasticsearch
|
|
|
|
- depends_on:
|
|
|
|
- - mongo
|
|
|
|
- - elasticsearch
|
|
|
|
- ports:
|
|
|
|
- # Graylog web interface and REST API
|
|
|
|
- - ${GRAYLOG_PORT}:9000
|
|
|
|
- # Syslog TCP
|
|
|
|
- - ${GRAYLOG_SYSLOG_TCP_PORT}:514
|
|
|
|
- # Syslog UDP
|
|
|
|
- - ${GRAYLOG_SYSLOG_UDP_PORT}:514/udp
|
|
|
|
- # GELF TCP
|
|
|
|
- - ${GRAYLOG_GELF_TCP_PORT}:12201
|
|
|
|
- # GELF UDP
|
|
|
|
- - ${GRAYLOG_GELF_UDP_PORT}:12201/udp
|
|
|
|
- user: graylog
|
|
|
|
- volumes:
|
|
|
|
- - ${DATA_PATH_HOST}/graylog:/usr/share/graylog/data
|
|
|
|
- networks:
|
|
|
|
- - backend
|
|
|
|
|
|
+ build: ./graylog
|
|
|
|
+ environment:
|
|
|
|
+ - GRAYLOG_PASSWORD_SECRET=${GRAYLOG_PASSWORD}
|
|
|
|
+ - GRAYLOG_ROOT_PASSWORD_SHA2=${GRAYLOG_SHA256_PASSWORD}
|
|
|
|
+ - GRAYLOG_HTTP_EXTERNAL_URI=http://127.0.0.1:${GRAYLOG_PORT}/
|
|
|
|
+ links:
|
|
|
|
+ - mongo
|
|
|
|
+ - elasticsearch
|
|
|
|
+ depends_on:
|
|
|
|
+ - mongo
|
|
|
|
+ - elasticsearch
|
|
|
|
+ ports:
|
|
|
|
+ # Graylog web interface and REST API
|
|
|
|
+ - ${GRAYLOG_PORT}:9000
|
|
|
|
+ # Syslog TCP
|
|
|
|
+ - ${GRAYLOG_SYSLOG_TCP_PORT}:514
|
|
|
|
+ # Syslog UDP
|
|
|
|
+ - ${GRAYLOG_SYSLOG_UDP_PORT}:514/udp
|
|
|
|
+ # GELF TCP
|
|
|
|
+ - ${GRAYLOG_GELF_TCP_PORT}:12201
|
|
|
|
+ # GELF UDP
|
|
|
|
+ - ${GRAYLOG_GELF_UDP_PORT}:12201/udp
|
|
|
|
+ user: graylog
|
|
|
|
+ volumes:
|
|
|
|
+ - ${DATA_PATH_HOST}/graylog:/usr/share/graylog/data
|
|
|
|
+ networks:
|
|
|
|
+ - backend
|
|
|
|
|
|
### Laravel Echo Server #######################################
|
|
### Laravel Echo Server #######################################
|
|
laravel-echo-server:
|
|
laravel-echo-server:
|
|
build:
|
|
build:
|
|
context: ./laravel-echo-server
|
|
context: ./laravel-echo-server
|
|
|
|
+ args:
|
|
|
|
+ - CHANGE_SOURCE=${CHANGE_SOURCE}
|
|
volumes:
|
|
volumes:
|
|
- ./laravel-echo-server/laravel-echo-server.json:/app/laravel-echo-server.json:ro
|
|
- ./laravel-echo-server/laravel-echo-server.json:/app/laravel-echo-server.json:ro
|
|
ports:
|
|
ports:
|
|
@@ -1238,11 +1446,13 @@ services:
|
|
|
|
|
|
### Docker-in-Docker ################################################
|
|
### Docker-in-Docker ################################################
|
|
docker-in-docker:
|
|
docker-in-docker:
|
|
- image: docker:dind
|
|
|
|
|
|
+ image: docker:19.03-dind
|
|
|
|
+ environment:
|
|
|
|
+ DOCKER_TLS_SAN: DNS:docker-in-docker
|
|
privileged: true
|
|
privileged: true
|
|
volumes:
|
|
volumes:
|
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
|
- - ${DATA_PATH_HOST}/dind:/var/lib/docker
|
|
|
|
|
|
+ - docker-in-docker:/certs/client
|
|
expose:
|
|
expose:
|
|
- 2375
|
|
- 2375
|
|
networks:
|
|
networks:
|
|
@@ -1250,11 +1460,13 @@ services:
|
|
|
|
|
|
### NetData ################################################
|
|
### NetData ################################################
|
|
netdata:
|
|
netdata:
|
|
- image: titpetric/netdata:latest
|
|
|
|
|
|
+ image: netdata/netdata:latest
|
|
cap_add:
|
|
cap_add:
|
|
- - SYS_PTRACE
|
|
|
|
|
|
+ - SYS_PTRACE
|
|
volumes:
|
|
volumes:
|
|
- - /:/host:ro
|
|
|
|
|
|
+ - /proc:/host/proc:ro
|
|
|
|
+ - /sys:/host/sys:ro
|
|
|
|
+ - /var/run/docker.sock:/var/run/docker.sock:ro
|
|
ports:
|
|
ports:
|
|
- "${NETDATA_PORT}:19999"
|
|
- "${NETDATA_PORT}:19999"
|
|
networks:
|
|
networks:
|
|
@@ -1559,19 +1771,38 @@ services:
|
|
traefik:
|
|
traefik:
|
|
build:
|
|
build:
|
|
context: ./traefik
|
|
context: ./traefik
|
|
- command: --docker
|
|
|
|
volumes:
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
+ - ./traefik/data:/data
|
|
|
|
+ command:
|
|
|
|
+ - "--api"
|
|
|
|
+ - "--providers.docker.exposedbydefault=false"
|
|
|
|
+ - "--accesslog.filepath=/data/access.log"
|
|
|
|
+ # entrypoints
|
|
|
|
+ - "--entrypoints.http.address=:${TRAEFIK_HOST_HTTP_PORT}"
|
|
|
|
+ - "--entrypoints.http.http.redirections.entrypoint.to=https"
|
|
|
|
+ - "--entrypoints.https.address=:${TRAEFIK_HOST_HTTPS_PORT}"
|
|
|
|
+ - "--entrypoints.traefik.address=:${TRAEFIK_DASHBOARD_PORT}"
|
|
|
|
+ # certificatesresolvers
|
|
|
|
+ - "--certificatesresolvers.letsencrypt.acme.email=${ACME_EMAIL}"
|
|
|
|
+ - "--certificatesresolvers.letsencrypt.acme.storage=/data/acme.json"
|
|
|
|
+ - "--certificatesresolvers.letsencrypt.acme.httpchallenge.entrypoint=http"
|
|
ports:
|
|
ports:
|
|
- - "${TRAEFIK_HOST_HTTP_PORT}:80"
|
|
|
|
- - "${TRAEFIK_HOST_HTTPS_PORT}:443"
|
|
|
|
|
|
+ - "${TRAEFIK_HOST_HTTP_PORT}:${TRAEFIK_HOST_HTTP_PORT}"
|
|
|
|
+ - "${TRAEFIK_HOST_HTTPS_PORT}:${TRAEFIK_HOST_HTTPS_PORT}"
|
|
|
|
+ - "${TRAEFIK_DASHBOARD_PORT}:${TRAEFIK_DASHBOARD_PORT}"
|
|
networks:
|
|
networks:
|
|
- frontend
|
|
- frontend
|
|
- backend
|
|
- backend
|
|
labels:
|
|
labels:
|
|
- - traefik.backend=traefik
|
|
|
|
- - traefik.frontend.rule=Host:monitor.localhost
|
|
|
|
- - traefik.port=8080
|
|
|
|
|
|
+ - "traefik.enable=true"
|
|
|
|
+ - "traefik.http.routers.traefik.rule=Host(`${ACME_DOMAIN}`)"
|
|
|
|
+ - "traefik.http.routers.traefik.entrypoints=traefik"
|
|
|
|
+ - "traefik.http.routers.traefik.service=api@internal"
|
|
|
|
+ - "traefik.http.routers.traefik.middlewares=access-auth"
|
|
|
|
+ - "traefik.http.routers.traefik.tls.certresolver=letsencrypt"
|
|
|
|
+ - "traefik.http.middlewares.access-auth.basicauth.realm=Login Required"
|
|
|
|
+ - "traefik.http.middlewares.access-auth.basicauth.users=${TRAEFIK_DASHBOARD_USER}"
|
|
|
|
|
|
### MOSQUITTO Broker #########################################
|
|
### MOSQUITTO Broker #########################################
|
|
mosquitto:
|
|
mosquitto:
|
|
@@ -1680,3 +1911,20 @@ services:
|
|
- ${DATA_PATH_HOST}/tomcat/webapps:/usr/local/tomcat/webapps
|
|
- ${DATA_PATH_HOST}/tomcat/webapps:/usr/local/tomcat/webapps
|
|
- ${DATA_PATH_HOST}/tomcat/logs:/usr/local/tomcat/logs
|
|
- ${DATA_PATH_HOST}/tomcat/logs:/usr/local/tomcat/logs
|
|
# restart: always
|
|
# restart: always
|
|
|
|
+
|
|
|
|
+### react #####################################################
|
|
|
|
+ react:
|
|
|
|
+ build:
|
|
|
|
+ context: ./react
|
|
|
|
+ ports:
|
|
|
|
+ - "3000:3000"
|
|
|
|
+ container_name: react
|
|
|
|
+ stdin_open: true
|
|
|
|
+ environment:
|
|
|
|
+ - CHOKIDAR_USEPOLLING=true
|
|
|
|
+ networks:
|
|
|
|
+ - frontend
|
|
|
|
+ - backend
|
|
|
|
+ volumes:
|
|
|
|
+ - ./react:/usr/src/app/react
|
|
|
|
+ - /usr/src/app/react/node_modules
|