在Docker上自动重新加载Flask服务器
我希望我的flask服务器检测代码中的更改并自动重新加载。我正在docker容器上运行它。每当我更改某些内容时,都必须重新构建容器。我不知道哪里出了问题。这是我第一次使用flask。
这是我的树
├── docker-compose.yml└── web
├── Dockerfile
├── app.py
├── crawler.py
└── requirements.txt
和代码(app.py)
from flask import Flask import requests
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello Flask!!'
if __name__ == '__main__':
app.run(debug = True, host = '0.0.0.0')
和docker-compose
version: '2'services:
web:
build: ./web
ports:
- "5000:5000"
volumes:
- ./web:/code
请给我一些建议。先感谢您。
回答:
如已完成,在调试模式下,Flask支持代码重新加载。问题在于该应用程序正在容器上运行,这使它与正在开发的真实源代码隔离。无论如何,你可以docker-compose.yaml
像这样通过卷在正在运行的容器和主机之间共享源:
这里是 docker-compose.yaml
version: "3"services:
web:
build: ./web
ports: ['5000:5000']
volumes: ['./web:/app']
在这里Dockerfile
:
FROM python:alpineEXPOSE 5000
WORKDIR app
COPY * /app/
RUN pip install -r requirements.txt
CMD python app.py
以上是 在Docker上自动重新加载Flask服务器 的全部内容, 来源链接: utcz.com/qa/411424.html