我的flask应用程序,在端口5000上启动flask服务器的主文件在里面:
服务器/main/core/setup.py
Docker 给了我这个错误,我知道是因为它找不到 setup.py
:
ERROR: for flask_api Cannot start service flask_api: oci runtime error:
container_linux.go:265: starting container process caused "exec:
\"/main/api/core\": stat /main/api/core: no such file or directory"
我的错误在 Dockerfile 中:
我将 setup.py
的默认路径从 Server/setup.py
更改为 Server/app/main/core/setup.py
询问如何在此路径上启动服务器
Dockerfile:
这是在我移动在端口 5000 上启动服务器的 setup.py 文件之前
# FROM python:3.6-alpine
# ADD ./Server /app
# WORKDIR /app
# RUN pip install -r requirements.txt
# EXPOSE 5000
# CMD ["python", "api.py"]
这是我将文件移得更深之后
FROM python:3.6-alpine
ADD ./Server /app
WORKDIR /app
RUN pip install -r requirements.txt
EXPOSE 5000
ENTRYPOINT ["/main/core"]
CMD ["python", "setup.py"]
有什么帮助如何点击 setup.py 吗?
最佳答案
入口点 ( https://docs.docker.com/engine/reference/builder/#entrypoint ) 和工作目录 ( https://docs.docker.com/engine/reference/builder/#workdir ) 有点困惑 请记住,您可以多次使用 WORKDIR。
你的 setup.py 应该位于路径:
Server/main/core/setup.py
我想你的 Dockerfile 应该是:
FROM python:3.6-alpine
ADD ./Server /app
WORKDIR /app
RUN pip install -r requirements.txt
EXPOSE 5000
WORKDIR /app/main/core
CMD ["python", "setup.py"]
关于python - docker 。如何运行 Flask 服务器主文件,在更深的文件结构中启动服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47849798/