docker-compose.yaml 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. services:
  2. traefik:
  3. image: public.ecr.aws/docker/library/traefik:3.5.3
  4. container_name: borgmatic-docs-traefik
  5. command:
  6. - "--global.checkNewVersion=false"
  7. - "--global.sendAnonymousUsage=false"
  8. - "--entrypoints.web.address=:8080"
  9. - "--accesslog"
  10. - "--accesslog.fields.headers.defaultmode=keep"
  11. - "--providers.docker"
  12. - "--providers.docker.exposedbydefault=false"
  13. - "--api.insecure=false"
  14. - "--api.dashboard=false"
  15. - "--log.level=WARN"
  16. ports:
  17. - "127.0.0.1:8080:8080"
  18. volumes:
  19. - ${CONTAINER_SOCKET_PATH:-/run/user/docker.sock}:/var/run/docker.sock:ro
  20. docs:
  21. image: borgmatic-docs
  22. container_name: borgmatic-docs
  23. labels:
  24. - "traefik.enable=true"
  25. - "traefik.http.routers.borgmatic-docs.rule=PathPrefix(`/borgmatic`)"
  26. # - "traefik.http.routers.borgmatic-docs.middlewares=borgmatic-trailing-slash-redirectregex,borgmatic-docs-redirectregex,borgmatic-stripprefix"
  27. - "traefik.http.routers.borgmatic-docs.middlewares=borgmatic-trailing-slash-redirectregex,borgmatic-stripprefix"
  28. - "traefik.http.middlewares.borgmatic-trailing-slash-redirectregex.redirectregex.regex=^(.*)/borgmatic$$"
  29. - "traefik.http.middlewares.borgmatic-trailing-slash-redirectregex.redirectregex.replacement=$${1}/borgmatic/"
  30. - "traefik.http.middlewares.borgmatic-trailing-slash-redirectregex.redirectregex.permanent=true"
  31. # - "traefik.http.middlewares.borgmatic-docs-redirectregex.redirectregex.regex=^(.*)/borgmatic/docs/(.*)$$"
  32. # - "traefik.http.middlewares.borgmatic-docs-redirectregex.redirectregex.replacement=$${1}/borgmatic/$${2}"
  33. # - "traefik.http.middlewares.borgmatic-docs-redirectregex.redirectregex.permanent=true"
  34. - "traefik.http.middlewares.borgmatic-stripprefix.stripprefix.prefixes=/borgmatic"
  35. - "traefik.http.routers.borgmatic-docs.entrypoints=web"
  36. build:
  37. dockerfile: docs/Dockerfile
  38. context: ..
  39. args:
  40. ENVIRONMENT: development
  41. message:
  42. image: alpine
  43. container_name: borgmatic-docs-message
  44. command:
  45. - sh
  46. - -c
  47. - |
  48. echo; echo "You can view dev docs at http://localhost:8080/borgmatic/"; echo
  49. depends_on:
  50. - docs