Python 如何从现有flask项目构建docker映像?

Python 如何从现有flask项目构建docker映像?,python,docker,flask,pycharm,Python,Docker,Flask,Pycharm,我有一个烧瓶项目在Pycharm上运行 flask-app\ app\ Database.py static\ tempalates\ home.html objects.html template.html app.py requirements.txt ven\ Dockerfile 我想在pycharm中对现有项目进行归档。我试图在这里添加新的口译员,但我没有工作 我已经创

我有一个烧瓶项目在Pycharm上运行

flask-app\
  app\
     Database.py
     static\
     tempalates\
         home.html
         objects.html
         template.html
     app.py
     requirements.txt
  ven\
  Dockerfile
我想在pycharm中对现有项目进行归档。我试图在这里添加新的口译员,但我没有工作

我已经创建了docker文件并尝试在容器中运行它,下面是我得到的:

web_1  | Traceback (most recent call last):
web_1  |   File "/usr/local/lib/python3.7/site-packages/flask/cli.py", line 240, in locate_app
web_1  |     __import__(module_name)
web_1  |   File "/opt/project/app/app.py", line 4, in <module>
web_1  |     from app import Database
web_1  | ImportError: cannot import name 'Database' from 'app' (/opt/project/app/app.py)
还有app.py

从烧瓶导入烧瓶,呈现模板,请求
输入数学
从flask_引导导入引导
从应用程序导入数据库
db=r'database.db'
app=烧瓶(名称)
引导=引导(应用程序)
如果名称=“\uuuuu main\uuuuuuuu”:
app.run(debug=True,host=“0.0.0.0”)
@app.route(“app/”)
def home():
返回渲染模板(“home.html”)

Pycharm不会创建
Dockerfile
docker compose.yaml文件,这是您的责任。这两个文件在以下教程中链接:

  • 这些文件应该位于项目根目录下。 简而言之,
    Dockerfile
    描述了应用程序的运行时环境(映像),而compose files告诉docker如何创建和启动此映像。在大多数实际情况下,这两个文件都将被修改以满足您的需要,因此很难自动生成

    然后,您可以按照配置Pycharm部分设置远程解释器(Docker)

    还有几件事需要注意:

  • Docker解释器仅在pycharm的专业版中受支持
  • 您还必须安装并启动docker和docker compose

  • Pycharm不创建
    Dockerfile
    docker compose.yaml
    文件,这是您的责任。这两个文件在以下教程中链接:

  • 这些文件应该位于项目根目录下。 简而言之,
    Dockerfile
    描述了应用程序的运行时环境(映像),而compose files告诉docker如何创建和启动此映像。在大多数实际情况下,这两个文件都将被修改以满足您的需要,因此很难自动生成

    然后,您可以按照配置Pycharm部分设置远程解释器(Docker)

    还有几件事需要注意:

  • Docker解释器仅在pycharm的专业版中受支持
  • 您还必须安装并启动docker和docker compose

  • 你能分享dockerfile
    docker compose.yaml
    ,…等吗。什么是错误?@ThanhNguyenVan,这就是重点。我没有这些文件。我认为pycharm负责创建它们。到目前为止你尝试了什么?@ThanhNguyenVan刚刚添加了项目解释器你可以共享
    dockerfile
    docker compose.yaml
    ,…等等。什么是错误?@ThanhNguyenVan,这就是重点。我没有这些文件。我认为pycharm负责创建它们。到目前为止你尝试了什么?@ThanhNguyenVan刚刚添加了项目口译员Tanks Ali!我刚刚更新了内容,运行DockerTanks Ali时出错!我刚刚更新了内容,运行docker时出错
    FROM python:3
    EXPOSE 5000
    MAINTAINER Khalil Mebarkia
    COPY app /app
    WORKDIR /app
    RUN pip install -r requirements.txt
    CMD python app.py