docker-compose.yml 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. ---
  2. # Shaarli - Docker Compose script
  3. #
  4. # See:
  5. # - https://shaarli.readthedocs.io/en/master/docker/shaarli-images/
  6. version: '3'
  7. networks:
  8. http-proxy:
  9. volumes:
  10. traefik-acme:
  11. shaarli-cache:
  12. shaarli-data:
  13. services:
  14. shaarli:
  15. image: shaarli/shaarli:master
  16. build: ./
  17. networks:
  18. - http-proxy
  19. volumes:
  20. - shaarli-cache:/var/www/shaarli/cache
  21. - shaarli-data:/var/www/shaarli/data
  22. labels:
  23. traefik.domain: "${SHAARLI_VIRTUAL_HOST}"
  24. traefik.backend: shaarli
  25. traefik.frontend.rule: "Host:${SHAARLI_VIRTUAL_HOST}"
  26. traefik:
  27. image: traefik
  28. command:
  29. - "--defaultentrypoints=http,https"
  30. - "--entrypoints=Name:http Address::80 Redirect.EntryPoint:https"
  31. - "--entrypoints=Name:https Address::443 TLS"
  32. - "--retry"
  33. - "--docker"
  34. - "--docker.domain=docker.localhost"
  35. - "--docker.exposedbydefault=true"
  36. - "--docker.watch=true"
  37. - "--acme"
  38. - "--acme.domains=${SHAARLI_VIRTUAL_HOST}"
  39. - "--acme.email=${SHAARLI_LETSENCRYPT_EMAIL}"
  40. - "--acme.entrypoint=https"
  41. - "--acme.onhostrule=true"
  42. - "--acme.storage=/acme/acme.json"
  43. - "--acme.httpchallenge"
  44. - "--acme.httpchallenge.entrypoint=http"
  45. networks:
  46. - http-proxy
  47. ports:
  48. - 80:80
  49. - 443:443
  50. volumes:
  51. - /var/run/docker.sock:/var/run/docker.sock:ro
  52. - traefik-acme:/acme