docker-compose.yml 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. # For more information: https://laravel.com/docs/sail
  2. version: '3'
  3. services:
  4. laravel.test:
  5. build:
  6. context: ./docker/8.1
  7. dockerfile: Dockerfile
  8. args:
  9. WWWGROUP: '${WWWGROUP}'
  10. image: sail-8.1/app
  11. extra_hosts:
  12. - 'host.docker.internal:host-gateway'
  13. ports:
  14. - '${APP_PORT:-80}:80'
  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. volumes:
  21. - '.:/var/www/html'
  22. networks:
  23. - sail
  24. depends_on:
  25. - mysql
  26. - redis
  27. mysql:
  28. image: 'mysql/mysql-server:8.0'
  29. ports:
  30. - '${FORWARD_DB_PORT:-3306}:3306'
  31. environment:
  32. MYSQL_ROOT_PASSWORD: '${DB_PASSWORD}'
  33. MYSQL_ROOT_HOST: "%"
  34. MYSQL_DATABASE: '${DB_DATABASE}'
  35. MYSQL_USER: '${DB_USERNAME}'
  36. MYSQL_PASSWORD: '${DB_PASSWORD}'
  37. MYSQL_ALLOW_EMPTY_PASSWORD: 1
  38. volumes:
  39. - 'sail-mysql:/var/lib/mysql'
  40. networks:
  41. - sail
  42. healthcheck:
  43. test: ["CMD", "mysqladmin", "ping", "-p${DB_PASSWORD}"]
  44. retries: 3
  45. timeout: 5s
  46. redis:
  47. image: 'redis:alpine'
  48. ports:
  49. - '${FORWARD_REDIS_PORT:-6379}:6379'
  50. volumes:
  51. - 'sail-redis:/data'
  52. networks:
  53. - sail
  54. healthcheck:
  55. test: ["CMD", "redis-cli", "ping"]
  56. retries: 3
  57. timeout: 5s
  58. networks:
  59. sail:
  60. driver: bridge
  61. volumes:
  62. sail-mysql:
  63. driver: local
  64. sail-redis:
  65. driver: local