我需要将我正在编写的一个小型Flask应用程序“docker化”。以下是我的代码:
FROM python:3
RUN apt-get update && apt-get install -y build-essential
WORKDIR /app
COPY requirements.txt /app
RUN pip install --no-cache-dir -r requirements.txt
COPY . /app
EXPOSE 5000
ENV FLASK_APP=app.py
ENV FLASK_DEBUG=1
CMD flask run
我可以使用下面的命令构建镜像并启动容器:
docker run -p 5000:5000 <container-name>
Flask告诉我它正在监听127.0.0.1:5000。但是我无法从我的主机访问该应用程序。我已经尝试使用localhost
和0.0.0.0
作为地址。但是,如果我进入容器,我就可以使用curl
命令来获取我期望的响应。
有没有人知道这是怎么回事?