Docker 错误:OCI 运行时创建失败:runc 创建失败:无法启动容器进程:exec:“。”:在 $PATH 中找不到可执行文件:未知

问题描述 投票:0回答:1

我使用 yolo 模型创建了一个 Flask 应用程序。我的应用程序正在使用以下库,我已将它们存储在

requirements.txt
文件中。
pandas
numpy
matplotlib
seaborn
streamlit
boto3
opencv-python
ultralytics
flask
easyocr

我在下面指定我的 Dockerfile 代码

COPY . /application
WORKDIR /application


RUN apt-get update && apt-get install ffmpeg libsm6 libxext6 unzip -y && pip install -r requirements.txt
CMD ["python", "application.py"]`

现在当我尝试将代码推送到 docker hub 中时。它已经被正确地推动了。我的 Flask 应用程序在端口 8080 上运行,主机为 0.0.0.0

将其推入 docker hub 后,我使用以下命令在 git bash 中运行以下代码。

docker run -it -p 8080:8080 -t <container_name> .

我收到以下错误。

docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: ".": executable file not found in $PATH: unknown.

我不明白这个问题如何解决?

我尝试在 docker 中安装 ffmpeg 和其他一些东西。我尝试关注一些 stack over flow 和 github 社区讨论,但仍然没有解决,因为这些讨论与我当前的情况并不完全匹配。

python docker flask deep-learning computer-vision
1个回答
0
投票

运行 Dockerfile 中指定的命令(即

python application.py
):

docker run -p 8080:8080 <image_name>

运行 Dockerfile 中指定的命令并查看其运行时的输出:

docker run -p 8080:8080 -t <image_name>

要在 docker 容器内运行交互式 shell(例如用于调试):

docker run -p 8080:8080 -ti <image_name> /bin/sh

您提供的命令尝试运行一个名为

.
的程序,该程序不存在。
t
标志用于为容器分配终端,而
i
标志使其具有交互性。

© www.soinside.com 2019 - 2024. All rights reserved.