docker-compose.yml 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. version: '3.4'
  2. services:
  3. www:
  4. deploy:
  5. replicas: 1
  6. mode: replicated
  7. placement:
  8. constraints:
  9. - node.role == manager
  10. - node.hostname == hetzner
  11. image: nginx
  12. # container_name: nginx_www
  13. # restart: "no"
  14. # environment:
  15. volumes:
  16. - www-html:/usr/share/nginx/html:ro
  17. - www-conf:/etc/nginx/conf.d:ro
  18. - www-backups:/srv/backups
  19. - /etc/localtime:/etc/localtime
  20. # command: [nginx-debug, '-g', 'daemon off;']
  21. networks:
  22. # - traefik-external
  23. - traefik-network
  24. # ports:
  25. # - "8006:80"
  26. labels:
  27. - "traefik.enable=true"
  28. - traefik.docker.network=traefik-network
  29. - traefik.constraint-label=traefik-network
  30. - traefik.http.routers.nginx-www-http.middlewares=http-to-https
  31. - traefik.http.routers.nginx-www-https.rule=Host(`www.odamus.com`)
  32. - traefik.http.routers.nginx-www-https.entrypoints=websecure
  33. - traefik.http.routers.nginx-www-http.rule=Host(`www.odamus.com`)
  34. - traefik.http.routers.nginx-www-http.entrypoints=web
  35. - "traefik.http.routers.nginx-www-https.tls.certresolver=mychallenge"
  36. - traefik.http.services.nginx-www.loadbalancer.server.port=80
  37. - traefik.http.routers.nginx-odamus-http.middlewares=http-to-https
  38. - traefik.http.routers.nginx-odamus-https.rule=Host(`odamus.com`)
  39. - traefik.http.routers.nginx-odamus-https.entrypoints=websecure
  40. - traefik.http.routers.nginx-odamus-http.rule=Host(`odamus.com`)
  41. - traefik.http.routers.nginx-odamus-http.entrypoints=web
  42. - "traefik.http.routers.nginx-odamus-https.tls.certresolver=mychallenge"
  43. # - traefik.http.services.nginx-odamus.loadbalancer.server.port=80
  44. - "traefik.http.routers.nginx-odamus-http.service=nginx-www"
  45. - "traefik.http.routers.nginx-odamus-https.service=nginx-www"
  46. ## http redirect to www
  47. - traefik.http.routers.nginx-odamus-http.middlewares=web-to-www
  48. - "traefik.http.middlewares.web-to-www.redirectregex.regex=^http://(?:www.)?odamus.com/(.*)"
  49. - "traefik.http.middlewares.web-to-www.redirectregex.replacement=http://www.odamus.com/$${1}"
  50. - traefik.http.routers.nginx-odamus-https.middlewares=websecure-to-www
  51. - "traefik.http.middlewares.websecure-to-www.redirectregex.regex=^https://(?:www.)?odamus.com/(.*)"
  52. - "traefik.http.middlewares.websecure-to-www.redirectregex.replacement=https://www.odamus.com/$${1}"
  53. volumes:
  54. # r-packages:
  55. # name: r-packages
  56. # external: true
  57. www-html:
  58. www-conf:
  59. www-backups:
  60. networks:
  61. # network:
  62. # traefik-external:
  63. # external:
  64. # name: traefik-external
  65. traefik-network:
  66. external: true