docker-compose.yml 4.6 KB

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