【发布时间】:2020-07-27 22:55:08
【问题描述】:
我无法让 Traefik v2 仪表板(或任何其他服务)通过404 page not found。我试图避免使用traefik.yml 文件并在docker compose 文件中使用command 和labels 配置所有内容。 HTTPS 有效,但内容不显示。
这是定义 traefik 服务的 compose 文件:
version: '3.3'
services:
traefik:
image: traefik:v2.2.1
command:
- --entrypoints.web.address=:80
- --entrypoints.websecure.address=:443
- --providers.docker
- --providers.docker.swarmmode=true
- --api
- --entrypoints.websecure.http.tls.certresolver=myresolver
- --certificatesresolvers.myresolver.acme.dnschallenge=true
- --certificatesresolvers.myresolver.acme.email=${CF_API_EMAIL}
- --certificatesresolvers.myresolver.acme.caserver=https://acme-staging-v02.api.letsencrypt.org/directory
- --certificatesresolvers.myresolver.acme.storage=acme.json
- --certificatesresolvers.myresolver.acme.dnschallenge.provider=cloudflare
labels:
traefik.http.routers.traefik.tls.certresolver: myresolver
traefik.http.services.traefik.loadbalancer.server.port: '8080'
traefik.http.routers.http-catchall.middlewares: redirect-to-https
traefik.http.middlewares.authtraefik.basicauth.users: user://V6Btlaf2i/ju5n/
traefik.http.routers.http-catchall.rule: hostregexp(`{host:.+}`)
traefik.http.routers.traefik.middlewares: authtraefik
traefik.http.routers.traefik.entrypoints: websecure
traefik.http.routers.traefik.service: api@internal
traefik.http.middlewares.redirect-to-https.redirectscheme.scheme: https
traefik.http.routers.http-catchall.entrypoints: web
traefik.http.routers.traefik.rule: Host(`traefik.example.com`)
environment:
CF_API_EMAIL: ${CF_API_EMAIL}
CF_API_KEY: ${CF_API_KEY}
ports:
- 80:80
- 443:443
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
networks:
- external
logging:
driver: json-file
networks:
external:
external: true
任何建议都将不胜感激。
资源
【问题讨论】:
标签: docker docker-compose docker-swarm traefik