我有一个用码头部署的烧瓶程序。我希望它是启用了https协议。使用的SSL自签名证书命令:openssl req -x509 -newkey rsa:4096 -nodes -out cert.pem -keyout key.pem -days 365
烧瓶应用程序(app.py)有以下内容:
from flask import Flask, jsonify
import ssl
application = Flask(__name__)
application.config.from_object(__name__)
context = ssl.SSLContext()
context.load_cert_chain('cert.pem','key.pem')
@application.route('/')
def default():
return 'hello world \n'
if __name__ == '__main__':
application.run(host='0.0.0.0', debug=False, ssl_context = context) 我在同一个目录中复制了两个pem文件。我已经尝试将pem文件放置在/tmp文件夹中。仍然有同样的问题。
我用来构建应用程序图像的Docker文件:
FROM *orgs private image*
RUN /path/bin/pip install flask
ADD app.py /app.py
ENTRYPOINT ["python", "app.py"]发布于 2021-04-27 18:27:10
你
ADD app.py /app.py但不要
ADD cert.pem /
ADD key.pem /因此它们在容器中不可用,因此在FileNotFound中不可用。
还可以进行其他改进(例如使用requirements.txt文件、使用子文件夹等),我建议阅读此https://docs.docker.com/language/python/build-images/
https://stackoverflow.com/questions/67288656
复制相似问题