docker-compose.yml 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. version: '3.4'
  2. services:
  3. caddy:
  4. hostname: caddy
  5. container_name: caddy
  6. restart: unless-stopped
  7. build:
  8. context: .
  9. dockerfile: docker/caddy/Dockerfile
  10. ports:
  11. - "80:80"
  12. - "443:443"
  13. volumes:
  14. - caddy_data:/data
  15. - caddy_config:/config
  16. - ./docker/caddy/caddy:/etc/caddy:cached
  17. db:
  18. hostname: db
  19. container_name: db
  20. build:
  21. context: .
  22. dockerfile: docker/db/Dockerfile
  23. restart: always
  24. ports:
  25. - "5433:5432"
  26. environment:
  27. - POSTGRES_DB=${POSTGRES_DB}
  28. - POSTGRES_USER=${POSTGRES_USER}
  29. - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
  30. volumes:
  31. - db_data:/var/lib/postgresql/data:rw
  32. api:
  33. hostname: api
  34. container_name: api
  35. build:
  36. context: .
  37. dockerfile: docker/api/Dockerfile
  38. args:
  39. - OS=${OS}
  40. restart: always
  41. environment:
  42. - PHP_IDE_CONFIG=serverName=api
  43. - HTTPS_METHOD=noredirect
  44. volumes:
  45. - ./api:/var/www/html:cached
  46. - ./api/vendor:/var/www/html/vendor:delegated
  47. - appdata5:/var/www/html/var/cache/
  48. - appdata5:/var/www/html/var/logs/
  49. depends_on:
  50. - db
  51. app:
  52. hostname: app
  53. container_name: app
  54. build:
  55. context: .
  56. dockerfile: docker/app/Dockerfile
  57. tty: true
  58. ports:
  59. - "3002:3002"
  60. - "3003:3003"
  61. environment:
  62. - NODE_ENV=docker
  63. - HTTPS_METHOD=noredirect
  64. volumes:
  65. - ./app:/var/app:rw,cached
  66. depends_on:
  67. - api
  68. volumes:
  69. db_data: ~
  70. appdata5: ~
  71. caddy_data: ~
  72. caddy_config: ~