python – 在Docker上自动重新加载flask服务器

前端之家收集整理的这篇文章主要介绍了python – 在Docker上自动重新加载flask服务器前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我希望我的烧瓶服务器检测代码中的更改并自动重新加载.
我在docker容器上运行它.
每当我改变一些东西时,我都必须再次建造容器.我不知道哪里错了.这是我第一次使用烧瓶.

这是我的树

├── 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:alpine

EXPOSE 5000

WORKDIR app

COPY * /app/

RUN pip install -r requirements.txt

CMD python app.py

猜你在找的Docker相关文章