【问题标题】:jinja2.exceptions.TemplateNotFound (while creating via docker-compose) (flask)jinja2.exceptions.TemplateNotFound(通过 docker-compose 创建时)(flask)
【发布时间】:2022-01-27 14:56:19
【问题描述】:

我正在尝试使用 docker-compose 连接和构建 两个 docker 文件。我是 docker 新手,然后在连接 docker-compose 时会感到困惑。 主要用途:通过 docker-compose 连接前端和后端(flask 应用程序)。

如果我的 Dockerfile 和 docker-compose.yml 文件错误。请纠正我

  • 就像前端在一个带有 Dockerfile 的前端文件夹中。
  • 后端在另一个文件夹中,带有 Dockerfile。 (通过 doc-comp 连接这 2 个)

这是我的文件结构 (在模板文件夹内 - loginpage.html)

app.py


from flask import Flask, render_template, flash, redirect, url_for, session, logging, request

app = Flask(__name__)
app.secret_key = 'hello'

@app.route("/", methods=["GET", "POST"])
def login():
    if request.method == "POST":
        uname = request.form["uname"]
        return render_template("loginpage.html", uname=uname)
    else:
        return render_template("loginpage.html")


if __name__ == "__main__":
    app.run(debug=True, port=5048,host='0.0.0.0')

后端/Dockerfile

FROM python:3.7-slim
ADD ./requirements.txt /backend/requirements.txt
WORKDIR /backend
RUN pip install -r requirements.txt
ADD . /backend
ENTRYPOINT ["python"]
CMD ["/backend/app.py"]
EXPOSE 5048

前端/Dockerfile

FROM python:3.7-slim
COPY templates /backend/
COPY . /backend
WORKDIR /backend

docker-compose.yml

version: '2'
services:
  backend:
    build:
      context: ./backend
      dockerfile: Dockerfile
    restart: always
    ports:
     - "5048:5048"
    

  frontend:
    build: ./frontend

【问题讨论】:

    标签: python docker flask docker-compose dockerfile


    【解决方案1】:

    您可以编写类似这样的 docker-compose 文件 ..

    version: "3.7"
        services:
          frontend:
            build:
              context: ./frontEnd
            container_name: frontend
            depends_on: [backend]
            ports: 
              - "5000:5000"
            networks:
              - my_own_network
            links:
              - "backend:backend"
          backend:
            build:
              context: ./backend
            container_name: backend
            ports:
              - "5048:5048"
            networks:
              - my_own_network
          networks:
              my_own_network:
    

    【讨论】:

    • 兄弟,还是同样的问题。我觉得我的两个 Dockerfile 都不正确。那么你能把这两个文件放在一起吗,按照上图中的文件结构
    猜你喜欢
    • 1970-01-01
    • 2021-01-03
    • 1970-01-01
    • 2020-03-20
    • 2018-12-02
    • 1970-01-01
    • 1970-01-01
    • 2016-09-24
    • 2017-11-03
    相关资源
    最近更新 更多