我有一个用docker部署的flask程序。我希望它是https协议启用。使用的ssl自签名证书命令: openssl req -x509 -newkey rsa:4096 -nodes -out cert.pem -keyout key.pem -days 365
flask 应用程序(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"]
1条答案
按热度按时间pbpqsu0x1#
你
但是不要
因此它们在容器中不可用,因此无法找到文件。
还有其他可以改进的地方(比如使用
requirements.txt
文件,使用子文件夹,等等),我建议阅读这个https://docs.docker.com/language/python/build-images/