在本地主机上使用 SSL 运行 Gunicorn?(与码头工人)

Gre*_*con 5 flask gunicorn docker

我正在 docker 本地开发一个应用程序,需要 ssl 才能与 API 端点一起使用,但我在使这些参数正常工作时遇到了问题:

gunicorn -c "python:config.gunicorn" --reload "dataexplorer.app:create_app()" --timeout 3600 
--workers=5 --certfile=/ssl/registry.crt 
--keyfile=/ssl/registry.key --ca-certs=/ssl/ca.cert --ssl-version=3
Run Code Online (Sandbox Code Playgroud)

Docker 找不到这些证书文件。所以我的问题是:gunicorn 在哪里寻找这些证书文件?它们如何生成?

Mor*_*fen 0

它正在文件夹 /ssl/ 中查找

这就是这意味着:/ssl/registry.crt

它在 /ssl/ 中查找名为registry.crt 的文件,同样适用于registry.key 和ca.cert

如果您确实拥有这些文件,请将它们放在您认为合适的位置,然后编辑开关以反映该位置,例如 --ca-certs=/home/user/ca.cert 或其他位置。

如果您需要证书,您可以按照以下指南创建自己的证书(“自签名”):https: //devcenter.heroku.com/articles/ssl-certificate-self

或者,您可以在这里获取免费的(需要定期更新):https ://letsencrypt.org/

如果您愿意付费,您可以通过谷歌搜索 ssl 证书从众多公司中进行选择。