docker-compose.yml 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. version: '2'
  2. services:
  3. ### Nginx Server Container ##################################
  4. nginx:
  5. build: ./nginx
  6. volumes_from:
  7. - volumes_source
  8. volumes:
  9. - ./logs/nginx/:/var/log/nginx
  10. ports:
  11. - "80:80"
  12. - "443:443"
  13. links:
  14. - php-fpm
  15. ### PHP-FPM Container #######################################
  16. php-fpm:
  17. build:
  18. context: ./php-fpm
  19. dockerfile: Dockerfile-70
  20. volumes_from:
  21. - volumes_source
  22. expose:
  23. - "9000"
  24. links:
  25. - workspace
  26. ### MySQL Container #########################################
  27. mysql:
  28. build: ./mysql
  29. volumes_from:
  30. - volumes_data
  31. ports:
  32. - "3306:3306"
  33. environment:
  34. MYSQL_DATABASE: homestead
  35. MYSQL_USER: homestead
  36. MYSQL_PASSWORD: secret
  37. MYSQL_ROOT_PASSWORD: root
  38. ### PostgreSQL Container ####################################
  39. postgres:
  40. build: ./postgres
  41. volumes_from:
  42. - volumes_data
  43. ports:
  44. - "5432:5432"
  45. environment:
  46. POSTGRES_DB: homestead
  47. POSTGRES_USER: homestead
  48. POSTGRES_PASSWORD: secret
  49. ### MariaDB Container #######################################
  50. mariadb:
  51. build: ./mariadb
  52. volumes_from:
  53. - volumes_data
  54. ports:
  55. - "3306:3306"
  56. environment:
  57. MYSQL_DATABASE: homestead
  58. MYSQL_USER: homestead
  59. MYSQL_PASSWORD: secret
  60. MYSQL_ROOT_PASSWORD: root
  61. ### Neo4j Container #########################################
  62. neo4j:
  63. build: ./neo4j
  64. ports:
  65. - "7474:7474"
  66. - "1337:1337"
  67. environment:
  68. - NEO4J_AUTH=homestead:secret
  69. volumes_from:
  70. - volumes_data
  71. ### MongoDB Container #######################################
  72. mongo:
  73. build: ./mongo
  74. ports:
  75. - "27017:27017"
  76. volumes_from:
  77. - volumes_data
  78. ### Redis Container #########################################
  79. redis:
  80. build: ./redis
  81. volumes_from:
  82. - volumes_data
  83. ports:
  84. - "6379:6379"
  85. ### Memcached Container #####################################
  86. memcached:
  87. build: ./memcached
  88. volumes_from:
  89. - volumes_data
  90. ports:
  91. - "11211:11211"
  92. links:
  93. - php-fpm
  94. ### Beanstalkd Container ####################################
  95. beanstalkd:
  96. build: ./beanstalkd
  97. ports:
  98. - "11300:11300"
  99. privileged: true
  100. links:
  101. - php-fpm
  102. ### Beanstalkd Console Container ############################
  103. beanstalkd-console:
  104. build: ./beanstalkd-console
  105. ports:
  106. - "2080:2080"
  107. links:
  108. - beanstalkd
  109. ### Workspace Utilities Container ###########################
  110. workspace:
  111. build:
  112. context: ./workspace
  113. args:
  114. - INSTALL_PRESTISSIMO=false
  115. volumes_from:
  116. - volumes_source
  117. tty: true
  118. ### Laravel Application Code Container ######################
  119. volumes_source:
  120. build: ./volumes/application
  121. volumes:
  122. - ../:/var/www/laravel
  123. ### Databases Data Container ################################
  124. volumes_data:
  125. build: ./volumes/data
  126. volumes:
  127. - /var/lib/mysql:/var/lib/mysql
  128. - /var/lib/postgres:/var/lib/postgres
  129. - /var/lib/mariadb:/var/lib/mariadb
  130. - /var/lib/memcached:/var/lib/memcached
  131. - /var/lib/redis:/data
  132. - /var/lib/neo4j:/var/lib/neo4j/data
  133. - /var/lib/mongo:/data/db
  134. ### Caddy Server Container ##################################
  135. # Edit the Caddyfile if needed (./caddy/Caddyfile)
  136. caddy:
  137. build: ./caddy
  138. volumes_from:
  139. - volumes_source
  140. ports:
  141. - "80:80"
  142. - "443:443"
  143. - "2015:2015"
  144. volumes:
  145. - ./caddy/Caddyfile:/etc/Caddyfile
  146. links:
  147. - php-fpm
  148. ### Add more Containers below ###############################