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.

102 lines
2.9 KiB

  1. version: '3.6'
  2. services:
  3. nginx:
  4. image: nginx
  5. restart: always
  6. networks:
  7. default:
  8. aliases:
  9. - loc.10ballov
  10. volumes:
  11. - ${PROJECTS_DIR}:/usr/share/nginx/html
  12. - ./config/nginx/conf.d:/etc/nginx/conf.d
  13. - ./config/nginx/includes.d:/etc/nginx/includes.d
  14. - ./log/nginx:/var/log/nginx
  15. ports:
  16. - "80:80"
  17. - "443:443"
  18. expose:
  19. - 80
  20. php-fpm:
  21. build:
  22. context: ./dockerfiles/php-fpm
  23. args:
  24. - INSTALL_XDEBUG=${INSTALL_XDEBUG}
  25. - INSTALL_REDIS=${INSTALL_REDIS}
  26. - INSTALL_ZIP=${INSTALL_ZIP}
  27. - INSTALL_BZ2=${INSTALL_BZ2}
  28. - INSTALL_INTL=${INSTALL_INTL}
  29. - INSTALL_PGSQL=${INSTALL_PGSQL}
  30. - INSTALL_BCMATH=${INSTALL_BCMATH}
  31. - INSTALL_PEAR_MAIL=${INSTALL_PEAR_MAIL}
  32. - PHP_OPT_SHORT_OPEN_TAG=${PHP_OPT_SHORT_OPEN_TAG}
  33. - PHP_OPT_MAX_EXECUTION_TIME=${PHP_OPT_MAX_EXECUTION_TIME}
  34. - PHP_OPT_MEMORY_LIMIT=${PHP_OPT_MEMORY_LIMIT}
  35. - PHP_OPT_UPLOAD_MAX_FILESIZE=${PHP_OPT_UPLOAD_MAX_FILESIZE}
  36. restart: always
  37. volumes:
  38. - ${PROJECTS_DIR}:/usr/share/nginx/html
  39. expose:
  40. - 9000
  41. workspace:
  42. build:
  43. context: ./dockerfiles/workspace
  44. args:
  45. - PHP_VERSION=${WORKSPACE_PHP_VERSION}
  46. - PUID=${WORKSPACE_PUID}
  47. - PGID=${WORKSPACE_PGID}
  48. - TZ=${WORKSPACE_TIMEZONE}
  49. - COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
  50. - COMPOSER_AUTH=${WORKSPACE_COMPOSER_AUTH}
  51. - COMPOSER_REPO_PACKAGIST=${WORKSPACE_COMPOSER_REPO_PACKAGIST}
  52. - INSTALL_WP_CLI=${WORKSPACE_INSTALL_WP_CLI}
  53. - INSTALL_XDEBUG=${WORKSPACE_INSTALL_XDEBUG}
  54. - INSTALL_SSH=${WORKSPACE_INSTALL_SSH}
  55. - SSH_PASSPHRAZE=${WORKSPACE_SSH_PASSPHRAZE}
  56. - INSTALL_FSWATCH=${WORKSPACE_INSTALL_FSWATCH}
  57. - INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
  58. - NODE_VERSION=${WORKSPACE_NODE_VERSION}
  59. - NPM_REGISTRY=${WORKSPACE_NPM_REGISTRY}
  60. - INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
  61. - YARN_VERSION=${WORKSPACE_YARN_VERSION}
  62. - INSTALL_GULP=${WORKSPACE_INSTALL_GULP}
  63. - INSTALL_MYSQL_CLIENT=${WORKSPACE_INSTALL_MYSQL_CLIENT}
  64. - INSTALL_PING=${WORKSPACE_INSTALL_PING}
  65. - INSTALL_PYTHON=${WORKSPACE_INSTALL_PYTHON}
  66. restart: always
  67. volumes:
  68. - ${PROJECTS_DIR}:/var/www
  69. extra_hosts:
  70. - "dockerhost:${DOCKER_HOST_IP}"
  71. db:
  72. image: mariadb
  73. restart: always
  74. environment:
  75. MYSQL_ROOT_PASSWORD: 123456
  76. volumes:
  77. - database:/var/lib/mysql
  78. - ./hostfiles:/hostfiles
  79. ports:
  80. - "3306:3306"
  81. pma:
  82. image: phpmyadmin/phpmyadmin
  83. restart: always
  84. environment:
  85. PMA_HOST: db
  86. PMA_USER: root
  87. PMA_PASSWORD: 123456
  88. ports:
  89. - "81:80"
  90. redis:
  91. image: redis
  92. restart: always
  93. command: [ "redis-server", "/usr/local/etc/redis/redis.conf" ]
  94. volumes:
  95. - ./config/redis/redis.conf:/usr/local/etc/redis/redis.conf