日志中出现Traefik“请求已中止”和“ TLS握手错误”错误

时间:2019-01-09 23:08:00

标签: docker traefik

使用Traefik访问我的Web应用程序时,我经常遇到请求失败的情况。

我正在使用:

  • 与Gunicorn一起使用的Docker化Flask应用
  • Postgres官方Docker容器
  • Traefik官方Docker容器
  • docker-compose启动以上所有容器

一切都在单个AWS EC2实例上运行。我主要是使用Traefik从letsencrypt获取自动生成的SSL证书

在大多数情况下,一切都如我所愿。但是定期在浏览器中加载我的页面时会挂起。当我检查“网络”标签时,可以看到某些请求的文档无法加载。

我打开了访问日志,并在Traefik中将日志级别设置为DEBUG,然后重新加载页面,直到看到错误为止。我第一次能够捕获该错误,日志没有表明有任何错误。他们显示Traefik对该文档的回复为200。这是safari网络窗格的相关日志部分和屏幕截图

日志:https://pastebin.com/DUegF4UU

enter image description here

捕获了更多的成功和失败之后,我最终能够看到与日志相关的错误:

traefik    | time="2019-01-09T22:14:54Z" level=debug msg="Request has been aborted [96.92.159.193:63283 - /admin/static/vendor/jquery.min.js?v=2.1.4]: net/http: abort Handler"
traefik    | time="2019-01-09T22:15:08Z" level=debug msg="http: TLS handshake error from 96.92.159.193:37272: EOF"

这里是相关日志行的完整集合:https://pastebin.com/9uXxFDEs

以及网络窗格:

enter image description here

一些注意事项:

1)并非每次请求都如此

2)即使发生了,我也不一定会看到错误

3)在用DEBUG记录的10个失败中,两次出现“请求已中止”错误,一次出现“ TLS握手错误”

仅出于完整性考虑,以下是成功请求的日志和网络窗格:

日志:https://pastebin.com/f1WhUWYk

enter image description here

这是我的traefik.toml文件:

debug = false
logLevel = "DEBUG"
defaultEntryPoints = ["http", "https"]

[web]
# Port for the status page
address = ":8080"
[web.auth.basic]
users = ["admin:nope"]

# Entrypoints, http and https
[entryPoints]
# http should be redirected to https
[entryPoints.http]
address = ":80"
    [entryPoints.http.redirect]
    entryPoint = "https"
# https is the default
[entryPoints.https]
address = ":443"
    [entryPoints.https.tls]

# Enable ACME (Let's Encrypt): automatic SSL
[acme]
# Email address used for registration
email = "mine"
storageFile = "/etc/traefik/acme.json"
entryPoint = "https"
onDemand = false
OnHostRule = true
[acme.httpChallenge]
entryPoint = "http"

[retry]

# Enable Docker configuration backend
[docker]
endpoint = "unix:///var/run/docker.sock"
watch = true
exposedbydefault = false

请让我知道更多信息是否有帮助。

编辑:经过更多的实验,看来当Traefik在docker容器中运行时,我只会收到响应失败。当我直接在主机上运行它(我的应用仍在docker中运行)时,我再也看不到任何问题。

0 个答案:

没有答案