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.

98 lines
2.6 KiB

  1. version: '3.6'
  2. services:
  3. nginx:
  4. image: nginx
  5. restart: always
  6. volumes:
  7. - ${PROJECTS_DIR}:/usr/share/nginx/html
  8. - ./config/nginx/conf.d:/etc/nginx/conf.d
  9. - ./config/nginx/includes.d:/etc/nginx/includes.d
  10. - ./log/nginx:/var/log/nginx
  11. ports:
  12. - "80:80"
  13. - "443:443"
  14. expose:
  15. - 80
  16. php:
  17. build:
  18. context: ./dockerfiles/php-fpm
  19. args:
  20. - INSTALL_REDIS=${INSTALL_REDIS}
  21. - INSTALL_PEAR_MAIL=${INSTALL_PEAR_MAIL}
  22. - PHP_OPT_SHORT_OPEN_TAG=${PHP_OPT_SHORT_OPEN_TAG}
  23. - PHP_OPT_MAX_EXECUTION_TIME=${PHP_OPT_MAX_EXECUTION_TIME}
  24. - PHP_OPT_MEMORY_LIMIT=${PHP_OPT_MEMORY_LIMIT}
  25. - PHP_OPT_POST_MAX_SIZE=${PHP_OPT_POST_MAX_SIZE}
  26. - PHP_OPT_UPLOAD_MAX_FILESIZE=${PHP_OPT_UPLOAD_MAX_FILESIZE}
  27. restart: always
  28. volumes:
  29. - ${PROJECTS_DIR}:/usr/share/nginx/html
  30. - ./data/profiler:/tmp/profiler
  31. expose:
  32. - 9000
  33. workspace:
  34. build:
  35. context: ./dockerfiles/workspace
  36. args:
  37. - CUSTOM_PUID=${WORKSPACE_PUID}
  38. - CUSTOM_PGID=${WORKSPACE_PGID}
  39. - CUSTOM_TZ=${WORKSPACE_TIMEZONE}
  40. - COMPOSER_VERSION=${WORKSPACE_COMPOSER_VERSION}
  41. - CUSTOM_NODE_VERSION=${WORKSPACE_CUSTOM_NODE_VERSION}
  42. - PHP_OPT_SHORT_OPEN_TAG=${PHP_OPT_SHORT_OPEN_TAG}
  43. - PHP_OPT_MAX_EXECUTION_TIME=${PHP_OPT_MAX_EXECUTION_TIME}
  44. - PHP_OPT_MEMORY_LIMIT=${PHP_OPT_MEMORY_LIMIT}
  45. - PHP_OPT_POST_MAX_SIZE=${PHP_OPT_POST_MAX_SIZE}
  46. - PHP_OPT_UPLOAD_MAX_FILESIZE=${PHP_OPT_UPLOAD_MAX_FILESIZE}
  47. restart: always
  48. volumes:
  49. - ${PROJECTS_DIR}:/var/www
  50. extra_hosts:
  51. - "dockerhost:${DOCKER_HOST_IP}"
  52. secrets:
  53. - user_ssh_key
  54. - user_known_hosts
  55. - composer_auth2
  56. inbucket:
  57. image: inbucket/inbucket
  58. restart: always
  59. ports:
  60. - "2500:2500"
  61. - "9090:9000"
  62. db:
  63. image: mariadb
  64. restart: always
  65. environment:
  66. MYSQL_ROOT_PASSWORD: 123456
  67. ports:
  68. - "3306:3306"
  69. pma:
  70. image: phpmyadmin/phpmyadmin
  71. restart: always
  72. environment:
  73. PMA_HOST: db
  74. PMA_USER: root
  75. PMA_PASSWORD: 123456
  76. ports:
  77. - "81:80"
  78. redis:
  79. image: redis
  80. restart: always
  81. command: [ "redis-server", "/usr/local/etc/redis/redis.conf" ]
  82. volumes:
  83. - ./config/redis/redis.conf:/usr/local/etc/redis/redis.conf
  84. # Must be copied into main docker-compose yml-file
  85. volumes:
  86. database:
  87. secrets:
  88. user_ssh_key:
  89. file: ~/.ssh/id_rsa
  90. user_known_hosts:
  91. file: ~/.ssh/known_hosts
  92. composer1_auth:
  93. file: ~/.composer/auth.json
  94. composer2_auth:
  95. file: ~/.config/composer/auth.json