Can';t到达Docker容器中运行的Flask服务器

Can';t到达Docker容器中运行的Flask服务器,docker,ubuntu,flask,Docker,Ubuntu,Flask,我正在构建一个在我的机器上正确运行的Flask+React Web应用程序。我试着把它记录下来。我可以创建映像(stiko:demo),docker运行,服务器启动: 但是当我试图打开https://0.0.0.0:5000/在我的浏览器上,连接失败: 我已经搜索了一段时间,尝试从各种图像开始,尝试使用ENDPOINT+CMD命令,使用flask run--host=0.0.0,但仍然存在相同的问题 以下是Dockerfile: app.py: 任何帮助都将不胜感激,谢谢 您的Doc

我正在构建一个在我的机器上正确运行的Flask+React Web应用程序。我试着把它记录下来。我可以创建映像(stiko:demo),docker运行,服务器启动:

但是当我试图打开
https://0.0.0.0:5000/
在我的浏览器上,连接失败:

我已经搜索了一段时间,尝试从各种图像开始,尝试使用
ENDPOINT
+
CMD
命令,使用
flask run--host=0.0.0
,但仍然存在相同的问题

  • 以下是Dockerfile:
  • app.py:

任何帮助都将不胜感激,谢谢

您的
Dockerfile
似乎没有启动flask api。尝试在末尾添加CMD

FROM ubuntu:20.04

RUN useradd -ms /bin/bash ubuntu

RUN apt update
RUN apt install software-properties-common -y
RUN apt-get install libpq-dev -y
RUN add-apt-repository ppa:deadsnakes/ppa
RUN apt install python3.9 -y
RUN apt install python3-pip -y
RUN pip3 install --upgrade pip

WORKDIR /app/build
COPY ./build ./

WORKDIR /app/server
COPY ./server ./
RUN pip3 install -r requirements.txt --no-cache-dir
RUN pip3 install python-dotenv

ENV APP_SETTINGS="config.DevelopmentConfig"

EXPOSE 5000

CMD [ "python", "app.py" ]

好吧,以防万一有人会像我一样陷入困境,可能没有网络技能:


Dockerfile和app.py都很好。但不是试图访问
https://0.0.0.0:5000/
在浏览器中,我应该尝试
https://127.0.0.1:5000/
它工作得非常好

我试过了,结果还是一样。在我的第一张图片中,您可以看到直接从容器中运行的
python3app.py
import sys
import os

from flask import Flask, request, render_template
from flask_sqlalchemy import SQLAlchemy
from flask_cors import CORS, cross_origin

from models import User, Project, Image, db
from api import blueprints

app = Flask(__name__,
  static_folder='../build/static',
  template_folder="../build"
)

app.config.from_object(os.environ['APP_SETTINGS'])
db.init_app(app)
cors = CORS(app)

# Register the blueprints
for b in blueprints:
  app.register_blueprint(b)

@cross_origin
@app.route('/', defaults={'u_path': ''})
@app.route('/<path:u_path>')
def index(u_path=None):
  return render_template("index.html")

if __name__ == "__main__":
  app.run(host=('0.0.0.0'), port=5000, ssl_context='adhoc')

  build
  |__static
  |__index.html
  |__ ...
  server
  |__app.py
  |__requirements.txt
  |__ ...
  Dockerfile
FROM ubuntu:20.04

RUN useradd -ms /bin/bash ubuntu

RUN apt update
RUN apt install software-properties-common -y
RUN apt-get install libpq-dev -y
RUN add-apt-repository ppa:deadsnakes/ppa
RUN apt install python3.9 -y
RUN apt install python3-pip -y
RUN pip3 install --upgrade pip

WORKDIR /app/build
COPY ./build ./

WORKDIR /app/server
COPY ./server ./
RUN pip3 install -r requirements.txt --no-cache-dir
RUN pip3 install python-dotenv

ENV APP_SETTINGS="config.DevelopmentConfig"

EXPOSE 5000

CMD [ "python", "app.py" ]