我将traefik作为我的突袭行动的反向代理运行(6.6.6) sonarr / radarr,nzbget,organizr等应用程序都可以正常运行。但这主要是由于它们非常容易设置。您只需要4个traefik特定的标签即可。
traefik.enable = true
traefik.backend = radarr
traefik.frontend.rule =路径前缀:/ radarr
traefik.port = 7878
traefik.frontend.auth.basic.users =用户名:密码
到目前为止,一切都很好,使用ssl并运行良好。
但是,一旦我不得不为容器配置一些额外的东西以在反向代理后面工作,我就会迷路。我已经阅读了许多有关nextcloud的指南,但是我无法使其正常工作。 目前,我正在使用linuxserver / nextcloud泊坞窗,并且从我的内部网络来看,它运行良好。我进行了所有设置,添加了用户和smb共享,每个人都可以正常连接。但是我无法使用子目录在traefik后面工作。它可能只是我需要添加到nextcloud容器中的一些traefik标签,但是我实在是一个新手,无法知道我需要哪些标签。
我的第一个问题是nextcloud强制使用https,除非您配置了某些内容,否则traefik不会喜欢。因此,现在我仅使用traefik.frontend.auth.forward.tls.insecureSkipVerify = true标签来解决此问题。我知道这可能是一个安全问题,但如果我没记错的话,这只会增加中途袭击的可能性。这不应该是太大的问题,因为traefik和nextcloud都在同一台机器上运行(此外,其他所有内容都通过http运行)。
因此,现在我可以正常工作了,当我尝试打开mydomain.tld / nextcloud时收到一条错误500消息。 traefik日志显示“调用错误。原因:获取:不支持的协议方案\“ \” 我尝试添加一些在指南(https://www.smarthomebeginner.com/traefik-reverse-proxy-tutorial-for-docker/#NextCloud_Your_Own_Cloud_Storage)中找到的标签
“ traefik.frontend.headers.SSLRedirect = true”
“ traefik.frontend.headers.STSSeconds = 315360000”
“ traefik.frontend.headers.browserXSSFilter = true”
“ traefik.frontend.headers.contentTypeNosniff = true”
“ traefik.frontend.headers.forceSTSHeader = true”
“ traefik.frontend.headers.SSLHost = mydomain.tld”
“ traefik.frontend.headers.STSPreload = true”
“ traefik.frontend.headers.frameDeny = true”
我只是想尝试一下,也许我很幸运。 可悲的是我没有。仍然是错误500。
答案 0 :(得分:0)
在您的traefik日志中启用:
loglevel = "DEBUG"
更多信息在这里:https://docs.traefik.io/configuration/logs/
完成此操作后,我意识到我的docker标签未正确在配置中应用InsecureSkipVerify = true
行。我在日志中看到的错误是:
500 Internal Server Error' caused by: x509: cannot validate certificate for 172.17.0.x because it doesn't contain any IP SANs"
要解决此问题,我必须直接将InsecureSkipVerify = true
添加到traefik.toml文件中,以使其正常工作。