![仅限 Docker 容器中的 SSL 错误(使用自签名证书托管)](https://linux22.com/image/784641/%E4%BB%85%E9%99%90%20Docker%20%E5%AE%B9%E5%99%A8%E4%B8%AD%E7%9A%84%20SSL%20%E9%94%99%E8%AF%AF%EF%BC%88%E4%BD%BF%E7%94%A8%E8%87%AA%E7%AD%BE%E5%90%8D%E8%AF%81%E4%B9%A6%E6%89%98%E7%AE%A1%EF%BC%89.png)
我使用自签名证书在公司 VPN 上托管各种 API。我最近尝试托管一个新的 API,无论我做什么,都会收到 SSL 错误。Firefox 报告了 PR_END_OF_FILE,而 Pythonrequests
库也同样抱怨
HTTPSConnectionPool(host='localhost', port=7057): Max retries exceeded with url: / (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:997)'))
我尝试按照多个指南来替换密钥,也尝试从切换gunicorn
到uwsgi
。 没有任何变化。 使用相同的证书在 Docker 容器外托管没有问题。
有人知道这背后发生了什么吗?
答案1
我找到了问题背后的原因:密钥文件的权限被设置为我的 Docker 容器的(非 root)主用户无法读取。重建容器以匹配我的 UID 解决了这个问题。