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.
121 lines
3.4 KiB
121 lines
3.4 KiB
services:
|
|
nginx:
|
|
image: nginx
|
|
restart: always
|
|
volumes:
|
|
- ${PROJECTS_DIR}:/usr/share/nginx/html
|
|
- ./config/nginx/conf.d:/etc/nginx/conf.d
|
|
- ./config/nginx/includes.d:/etc/nginx/includes.d
|
|
- ./config/nginx/ssl.d:/etc/nginx/ssl.d
|
|
- ./log/nginx:/var/log/nginx
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
php:
|
|
build:
|
|
context: ./dockerfiles/php-fpm
|
|
args:
|
|
- CUSTOM_TZ=${CUSTOM_TZ}
|
|
- CUSTOM_LOCALE=${CUSTOM_LOCALE}
|
|
- PHP_OPT_MEMORY_LIMIT=${PHP_OPT_MEMORY_LIMIT}
|
|
- PHP_OPT_POST_MAX_SIZE=${PHP_OPT_POST_MAX_SIZE}
|
|
- PHP_OPT_UPLOAD_MAX_FILESIZE=${PHP_OPT_UPLOAD_MAX_FILESIZE}
|
|
- PHP_OPT_MAX_EXECUTION_TIME=${PHP_OPT_MAX_EXECUTION_TIME}
|
|
# Other args that might be used for customize in every separate container
|
|
# - INSTALL_PEAR_MAIL=true
|
|
# - INSTALL_LIBREOFFICE=true
|
|
# - INSTALL_NUC_CERTS=true
|
|
# - PHP_OPT_SHORT_OPEN_TAG=On
|
|
restart: always
|
|
volumes:
|
|
- ${PROJECTS_DIR}:/usr/share/nginx/html
|
|
- ./data/profiler:/tmp/profiler
|
|
workspace:
|
|
build:
|
|
context: ./dockerfiles/workspace
|
|
args:
|
|
- CUSTOM_TZ=${CUSTOM_TZ}
|
|
- CUSTOM_LOCALE=${CUSTOM_LOCALE}
|
|
- CUSTOM_PUID=${WORKSPACE_PUID}
|
|
- CUSTOM_PGID=${WORKSPACE_PGID}
|
|
- INSTALL_YADM=${WORKSPACE_INSTALL_YADM}
|
|
- INSTALL_FINE_UTILS=${WORKSPACE_INSTALL_FINE_UTILS}
|
|
- PHP_OPT_MEMORY_LIMIT=${WORKSPACE_PHP_OPT_MEMORY_LIMIT}
|
|
# Other args that might be used for customize in every separate container
|
|
# - CUSTOM_COMPOSER_VERSION=1
|
|
# - INSTALL_WP_CLI=true
|
|
# - INSTALL_PEAR_MAIL=true
|
|
# - INSTALL_NODE=true
|
|
# - NODE_VERSION=v18.18.0
|
|
# - INSTALL_PYTHON=true
|
|
# - PYTHON_VERSION=3.12
|
|
# - INSTALL_SUPERVISOR=false # Not ready
|
|
# - INSTALL_LIBREOFFICE=true
|
|
# - INSTALL_NUC_CERTS=true
|
|
# - PHP_OPT_SHORT_OPEN_TAG=On
|
|
restart: always
|
|
volumes:
|
|
- ${PROJECTS_DIR}:/var/www
|
|
- ./data/profiler:/tmp/profiler
|
|
- ./config/supervisor:/etc/supervisor/conf.d
|
|
extra_hosts:
|
|
- "dockerhost:${DOCKER_HOST_IP}"
|
|
secrets:
|
|
- user_ssh_key
|
|
- user_known_hosts
|
|
- composer_auth
|
|
db:
|
|
image: mariadb
|
|
restart: always
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: 123456
|
|
volumes:
|
|
- database:/var/lib/mysql
|
|
- ./hostfiles:/hostfiles
|
|
- ./log/mariadb:/var/log/mariadb
|
|
- ./config/mariadb:/etc/mysql/conf.d
|
|
security_opt:
|
|
- seccomp=unconfined
|
|
pma:
|
|
image: phpmyadmin/phpmyadmin
|
|
restart: always
|
|
environment:
|
|
PMA_HOST: db
|
|
PMA_USER: root
|
|
PMA_PASSWORD: 123456
|
|
inbucket:
|
|
image: inbucket/inbucket
|
|
restart: always
|
|
expose:
|
|
- 2500
|
|
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
|
|
- ./config/redis/redis-local.conf:/usr/local/etc/redis/redis-local.conf
|
|
elastic:
|
|
build:
|
|
context: ./dockerfiles/elastic
|
|
restart: on-failure
|
|
environment:
|
|
- discovery.type=single-node
|
|
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
|
|
ulimits:
|
|
memlock:
|
|
soft: -1
|
|
hard: -1
|
|
expose:
|
|
- "9200"
|
|
- "9300"
|
|
minio:
|
|
image: minio/minio:RELEASE.2020-06-12T00-06-19Z
|
|
restart: always
|
|
command: server /minio
|
|
pm2:
|
|
build:
|
|
context: ./dockerfiles/pm2
|
|
restart: always
|
|
expose:
|
|
- 3000
|