python - Docker运行错误:/bin/sh:1:python:未找到
问题描述
所以,我尝试学习 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)
解决方案
由于您只安装python3
在 docker 映像中,如此处所示
RUN apt-get update && apt-get install -y python3 python3-pip
所以你需要运行python3
而不是python
在这一行:CMD python .main.py
而且您的脚本名称有错字。它应该main.py
代替.main.py
. 或者应该是./main.py
所以改成CMD python3 ./main.py
如果您仍然有错误,您可能需要在Dockerfile
上面的行中添加这一行EXPOSE 5000
:
WORKDIR /opt/MyApp-test
推荐阅读
- c# - Azure 函数上的 Emgucv 4.2 版
- php - 如何从查询中检索嵌套连接选择语句数据
- python - Python:如何将列与文本条目以及彼此进行比较
- c++ - Sox - 在 C++ 中使用静音效果
- c++ - 如何“重新启动”程序
- ios - 如何在 iOS webview 的多个页面中注入/评估 JS?
- asp.net - 带有分页和可选参数的 Crystal Reports Web 查看器问题
- python - 如何在 Python 中添加数字?
- image - Pytorch:加载灰度图像数据集
- java - 创建名为“servletEndpointRegistrar”的 bean 时出错 Spring Boot