docker-compose.yml 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. version: "3.8"
  2. services:
  3. laravel.test:
  4. build:
  5. context: ./vendor/laravel/sail/runtimes/8.2
  6. dockerfile: Dockerfile
  7. args:
  8. WWWGROUP: "${WWWGROUP}"
  9. image: sail-8.2/app
  10. extra_hosts:
  11. - "host.docker.internal:host-gateway"
  12. ports:
  13. - "${APP_PORT:-80}:80"
  14. - "${VITE_PORT:-5173}:${VITE_PORT:-5173}"
  15. environment:
  16. WWWUSER: "${WWWUSER}"
  17. LARAVEL_SAIL: 1
  18. XDEBUG_MODE: "${SAIL_XDEBUG_MODE:-off}"
  19. XDEBUG_CONFIG: "${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}"
  20. IGNITION_LOCAL_SITES_PATH: "${PWD}"
  21. APP_NAME: "${APP_NAME}"
  22. APP_ENV: "${APP_ENV}"
  23. APP_KEY: "${APP_KEY}"
  24. APP_DEBUG: "${APP_DEBUG}"
  25. APP_URL: "${APP_URL}"
  26. LOG_CHANNEL: "${LOG_CHANNEL}"
  27. LOG_DEPRECATIONS_CHANNEL: "${LOG_DEPRECATIONS_CHANNEL}"
  28. LOG_LEVEL: "${LOG_LEVEL}"
  29. VITE_API_BASE_URL: "${VITE_API_BASE_URL}"
  30. VITE_KM_HOME_URL: "${VITE_KM_HOME_URL}"
  31. VITE_LOGIN_URL: "${VITE_LOGIN_URL}"
  32. VITE_BASE_URL: "${VITE_BASE_URL}"
  33. VITE_PATH_DATABASE: "${VITE_PATH_DATABASE}"
  34. VITE_PATH_DESIGNGUIDE: "${VITE_PATH_DESIGNGUIDE}"
  35. VITE_PATH_DRILLING: "${VITE_PATH_DRILLING}"
  36. VITE_PATH_GIS: "${VITE_PATH_GIS}"
  37. VITE_PATH_ELEARNING: "${VITE_PATH_ELEARNING}"
  38. VITE_PATH_TOOLS: "${VITE_PATH_TOOLS}"
  39. VITE_PATH_PROJECTFEEDBACK: "${VITE_PATH_PROJECTFEEDBACK}"
  40. VITE_PATH_DEFAULT: "${VITE_PATH_DEFAULT}"
  41. VITE_PATH_PERMISSION: "${VITE_PATH_PERMISSION}"
  42. DB_CONNECTION: "${DB_CONNECTION}"
  43. DB_HOST: "${DB_HOST}"
  44. DB_PORT: "${DB_PORT}"
  45. DB_DATABASE: "${DB_DATABASE}"
  46. DB_USERNAME: "${DB_USERNAME}"
  47. DB_PASSWORD: "${DB_PASSWORD}"
  48. DB_KMDB_CONNECTION: "${DB_KMDB_CONNECTION}"
  49. DB_KMDB_HOST: "${DB_KMDB_HOST}"
  50. DB_KMDB_DATABASE: "${DB_KMDB_DATABASE}"
  51. DB_KMDB_USERNAME: "${DB_KMDB_USERNAME}"
  52. DB_KMDB_PASSWORD: "${DB_KMDB_PASSWORD}"
  53. MONGO_DB_HOST: "${MONGO_DB_HOST}"
  54. MONGO_DB_PORT: "${MONGO_DB_PORT}"
  55. MONGO_DB_DATABASE: "${MONGO_DB_DATABASE}"
  56. BROADCAST_DRIVER: "${BROADCAST_DRIVER}"
  57. CACHE_DRIVER: "${CACHE_DRIVER}"
  58. FILESYSTEM_DISK: "${FILESYSTEM_DISK}"
  59. QUEUE_CONNECTION: "${QUEUE_CONNECTION}"
  60. SESSION_DRIVER: "${SESSION_DRIVER}"
  61. SESSION_LIFETIME: "${SESSION_LIFETIME}"
  62. MEMCACHED_HOST: "${MEMCACHED_HOST}"
  63. REDIS_HOST: "${REDIS_HOST}"
  64. REDIS_PASSWORD: "${REDIS_PASSWORD}"
  65. REDIS_PORT: "${REDIS_PORT}"
  66. MAIL_MAILER: "${MAIL_MAILER}"
  67. MAIL_HOST: "${MAIL_HOST}"
  68. MAIL_PORT: "${MAIL_PORT}"
  69. MAIL_USERNAME: "${MAIL_USERNAME}"
  70. MAIL_PASSWORD: "${MAIL_PASSWORD}"
  71. MAIL_ENCRYPTION: "${MAIL_ENCRYPTION}"
  72. MAIL_FROM_ADDRESS: "${MAIL_FROM_ADDRESS}"
  73. MAIL_FROM_NAME: "${MAIL_FROM_NAME}"
  74. MAILGUN_DOMAIN: "${MAILGUN_DOMAIN}"
  75. MAILGUN_SECRET: "${MAILGUN_SECRET}"
  76. MAIL_EHLO_DOMAIN: "${MAIL_EHLO_DOMAIN}"
  77. AWS_ACCESS_KEY_ID: "${AWS_ACCESS_KEY_ID}"
  78. AWS_SECRET_ACCESS_KEY: "${AWS_SECRET_ACCESS_KEY}"
  79. AWS_DEFAULT_REGION: "${AWS_DEFAULT_REGION}"
  80. AWS_BUCKET: "${AWS_BUCKET}"
  81. AWS_USE_PATH_STYLE_ENDPOINT: "${AWS_USE_PATH_STYLE_ENDPOINT}"
  82. PUSHER_APP_ID: "${PUSHER_APP_ID}"
  83. PUSHER_APP_KEY: "${PUSHER_APP_KEY}"
  84. PUSHER_APP_SECRET: "${PUSHER_APP_SECRET}"
  85. PUSHER_APP_CLUSTER: "${PUSHER_APP_CLUSTER}"
  86. VITE_PUSHER_APP_KEY: "${VITE_PUSHER_APP_KEY}"
  87. VITE_PUSHER_HOST: "${VITE_PUSHER_HOST}"
  88. VITE_PUSHER_PORT: "${VITE_PUSHER_PORT}"
  89. VITE_PUSHER_SCHEME: "${VITE_PUSHER_SCHEME}"
  90. VITE_PUSHER_APP_CLUSTER: "${VITE_PUSHER_APP_CLUSTER}"
  91. DEVTOOLS_EDITOR: "${DEVTOOLS_EDITOR}"
  92. JWT_SECRET: "${JWT_SECRET}"
  93. JWT_ALGO: "${JWT_ALGO}"
  94. volumes:
  95. - ".:/var/www/html"
  96. networks:
  97. - sail
  98. depends_on:
  99. - mysql
  100. - redis
  101. - selenium
  102. - mailpit
  103. mysql:
  104. image: "mysql/mysql-server:8.0"
  105. ports:
  106. - "${FORWARD_DB_PORT:-3306}:3306"
  107. environment:
  108. MYSQL_ROOT_PASSWORD: "${DB_PASSWORD}"
  109. MYSQL_ROOT_HOST: "%"
  110. MYSQL_DATABASE: "${DB_DATABASE}"
  111. MYSQL_USER: "${DB_USERNAME}"
  112. MYSQL_PASSWORD: "${DB_PASSWORD}"
  113. MYSQL_ALLOW_EMPTY_PASSWORD: 1
  114. volumes:
  115. - "sail-mysql:/var/lib/mysql"
  116. - "./vendor/laravel/sail/database/mysql/create-testing-database.sh:/docker-entrypoint-initdb.d/10-create-testing-database.sh"
  117. networks:
  118. - sail
  119. healthcheck:
  120. test:
  121. - CMD
  122. - mysqladmin
  123. - ping
  124. - "-p${DB_PASSWORD}"
  125. retries: 3
  126. timeout: 5s
  127. redis:
  128. image: "redis:alpine"
  129. ports:
  130. - "${FORWARD_REDIS_PORT:-6379}:6379"
  131. volumes:
  132. - "sail-redis:/data"
  133. networks:
  134. - sail
  135. healthcheck:
  136. test:
  137. - CMD
  138. - redis-cli
  139. - ping
  140. retries: 3
  141. timeout: 5s
  142. selenium:
  143. image: seleniarm/standalone-chromium
  144. extra_hosts:
  145. - "host.docker.internal:host-gateway"
  146. volumes:
  147. - "/dev/shm:/dev/shm"
  148. networks:
  149. - sail
  150. mailpit:
  151. image: "axllent/mailpit:latest"
  152. ports:
  153. - "${FORWARD_MAILPIT_PORT:-1025}:1025"
  154. - "${FORWARD_MAILPIT_DASHBOARD_PORT:-8025}:8025"
  155. networks:
  156. - sail
  157. networks:
  158. sail:
  159. driver: bridge
  160. volumes:
  161. sail-mysql:
  162. driver: local
  163. sail-redis:
  164. driver: local