【问题标题】:Docker run Error: /bin/sh: 1: python: not foundDocker运行错误:/bin/sh:1:python:未找到
【发布时间】:2020-03-17 02:07:26
【问题描述】:

所以,我尝试学习 docker 并尝试制作一个简单的图像来尝试一下。 docker build 部分运行良好,但是当我 docker run 时,我遇到了问题:

(base) daniellombardi@Daniels-MacBook-Pro MyApp-test % docker run bd
/bin/sh: 1: python: not found

Dockerfile:

FROM ubuntu

RUN apt-get update && apt-get install -y python3 python3-pip

RUN pip3 install flask

RUN mkdir /MyApp-test

ADD folder /opt/MyApp-test

EXPOSE 5000

CMD python .main.py

对于任何想知道的人,这是 main.py 上的代码

from flask import Flask

app = Flask(__name__)


@app.route('/')
def index():
    return 'IT WORKED! I AM RUNNING FROM A DOCKER CONTAINER!!!'


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

【问题讨论】:

  • 更改为CMD python3 .main.py
  • 我收到此错误:``` (base) danielombardi@Daniels-MacBook-Pro MyApp-test % docker run 3bd python3: can't open file '.main.py': [Errno 2 ] 没有这样的文件或目录 ```

标签: python docker flask dockerfile


【解决方案1】:

由于您只在 docker 映像中安装 python3,如下所示

RUN apt-get update && apt-get install -y python3 python3-pip

因此,您需要在这一行中运行 python3 而不是 pythonCMD python .main.py

而且你的脚本名称有错别字。它应该是 main.py 而不是 .main.py。或者应该是./main.py

所以改成CMD python3 ./main.py

如果你仍然有错误,你可能需要在Dockerfile上面的EXPOSE 5000行中添加这一行:

WORKDIR /opt/MyApp-test

【讨论】:

  • 出现此错误:(base) daniellombardi@Daniels-MacBook-Pro MyApp-test % docker run 3bd python3: can't open file '.main.py': [Errno 2] No such file or directory
  • 你应该使用python3 ./main.py而不是python3 .main.py
猜你喜欢
  • 2017-02-10
  • 1970-01-01
  • 2017-10-20
  • 2017-02-07
  • 2015-12-18
  • 2021-07-24
  • 1970-01-01
  • 1970-01-01
  • 2019-05-15
相关资源
最近更新 更多