与问题“ Traefik and Let's Encrypt on non default http port 80?”不同,我在默认的http端口上运行Traefik(> 1.7
)。
我想为8448
上一项服务的HTTP流量配置一个附加入口点。因此,我已将此入口点添加到我的traefik.toml
中:
defaultEntryPoints = ["http", "https"]
logLevel = "DEBUG"
[entryPoints]
[entryPoints.http]
address = ":80"
[entryPoints.http.redirect]
entryPoint = "https"
[entryPoints.https]
address = ":443"
[entryPoints.https.tls]
[entryPoints.synapse]
address = ":8448"
[entryPoints.synapse.tls]
[api]
[acme]
email = "webmaster@example.com"
storage = "acme.json"
entryPoint = "https"
onHostRule = true
[acme.httpChallenge]
entryPoint = "http"
[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "example.com"
watch = true
exposedByDefault = false
我的docker服务正在通过以下标签使用此端口:
labels:
- traefik.enable=true
- traefik.clients.frontend.rule=Host:matrix.example.com
- traefik.clients.port=8008
- traefik.clients.docker.network=proxy
- traefik.federation.frontend.rule=Host:matrix.example.com
- traefik.federation.port=8448
- traefik.federation.docker.network=proxy
- traefik.federation.frontend.entryPoints=synapse
不幸的是,即使我的Docker容器确实做到了,Traefik也不公开此端口。日志没有显示任何错误,但是显示入口点是由Traefik设置的。
有人知道我在做什么错吗?
该设置可以按预期用于其他入口点。
答案 0 :(得分:0)
让我们加密需要TLS challenge的端口443,这是一个让我们加密的约束(或HTTP challenge的端口80)。
https://community.letsencrypt.org/t/support-for-ports-other-than-80-and-443/3419/72
或者,您也可以使用DNS Challenge。