docker-compose.yaml 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. services:
  2. db:
  3. image: mariadb:10-focal
  4. command: '--default-authentication-plugin=mysql_native_password'
  5. restart: always
  6. healthcheck:
  7. test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "--silent"]
  8. interval: 3s
  9. retries: 5
  10. start_period: 30s
  11. secrets:
  12. - db-password
  13. volumes:
  14. - db-data:/var/lib/mysql
  15. networks:
  16. - backnet
  17. environment:
  18. - MYSQL_DATABASE=example
  19. - MYSQL_ROOT_PASSWORD_FILE=/run/secrets/db-password
  20. expose:
  21. - 3306
  22. - 33060
  23. backend:
  24. build:
  25. context: backend
  26. target: dev-envs
  27. restart: always
  28. volumes:
  29. - /var/run/docker.sock:/var/run/docker.sock
  30. secrets:
  31. - db-password
  32. ports:
  33. - 8000:8000
  34. networks:
  35. - backnet
  36. - frontnet
  37. depends_on:
  38. db:
  39. condition: service_healthy
  40. proxy:
  41. build: proxy
  42. restart: always
  43. ports:
  44. - 80:80
  45. depends_on:
  46. - backend
  47. networks:
  48. - frontnet
  49. volumes:
  50. db-data:
  51. secrets:
  52. db-password:
  53. file: db/password.txt
  54. networks:
  55. backnet:
  56. frontnet: