Docker 使用 AWS 时在 PATH 中找不到可执行文件 batch/ECS
Docker executable not found in PATH when using AWS batch/ECS
我正在尝试使用 AWS 批处理 运行 一个简单的 Docker 化 Python 脚本。
我的 Docker 图片有问题吗?
我已经在本地构建了 Docker 映像,它 运行 在本地没问题。我将图像推送到 AWS 存储库,并将此远程图像拉到我的本地计算机也正确 运行s。
问题
我已经设置了我的计算环境、作业队列和作业定义,但是我收到了这个错误
CannotStartContainerError: Error response from daemon:
OCI runtime create failed: container_linux.go:370:
starting container process caused:
exec: "docker": executable file not found in $PATH: unknown
当我运行
["docker","run","-t","111111111111.dkr.ecr.us-region-X.amazonaws.com/myimage:latest","python3","hello_world.py","--MSG","ok"]
是否安装了Docker?
我正在使用 ECS_AL2
图片类型。当我使用此 AMI 启动 EC2 并通过 ssh 进入它时,我可以看到 Docker 已经安装。例如,docker run
工作正常。
我的计算环境、作业队列或作业定义是否存在(一般)问题?
当我改为尝试 运行 命令时 echo hello
这工作正常。
感谢您提供的任何 advice/help。
更新 - 答案
@samtoddler 帮助我意识到我只需要
["python3","hello_world.py","--MSG","ok"]
在命令语句中
这个错误
CannotStartContainerError: Error response from daemon:
这意味着它来自 docker 守护程序,因此 docker 正在执行它的工作。
您的 docker 图像、它的打包方式以及您尝试传递所有这些变量的方式似乎有些问题。
请查看有关如何使用 ENTRYPOINT 和 CMD 的 Docker Image CMD 部分。
这个问题有一些解释docker-oci-runtime-create-failed-container-linux-go349-starting-container-pro
我正在尝试使用 AWS 批处理 运行 一个简单的 Docker 化 Python 脚本。
我的 Docker 图片有问题吗?
我已经在本地构建了 Docker 映像,它 运行 在本地没问题。我将图像推送到 AWS 存储库,并将此远程图像拉到我的本地计算机也正确 运行s。
问题
我已经设置了我的计算环境、作业队列和作业定义,但是我收到了这个错误
CannotStartContainerError: Error response from daemon:
OCI runtime create failed: container_linux.go:370:
starting container process caused:
exec: "docker": executable file not found in $PATH: unknown
当我运行
["docker","run","-t","111111111111.dkr.ecr.us-region-X.amazonaws.com/myimage:latest","python3","hello_world.py","--MSG","ok"]
是否安装了Docker?
我正在使用 ECS_AL2
图片类型。当我使用此 AMI 启动 EC2 并通过 ssh 进入它时,我可以看到 Docker 已经安装。例如,docker run
工作正常。
我的计算环境、作业队列或作业定义是否存在(一般)问题?
当我改为尝试 运行 命令时 echo hello
这工作正常。
感谢您提供的任何 advice/help。
更新 - 答案
@samtoddler 帮助我意识到我只需要
["python3","hello_world.py","--MSG","ok"]
在命令语句中
这个错误
CannotStartContainerError: Error response from daemon:
这意味着它来自 docker 守护程序,因此 docker 正在执行它的工作。
您的 docker 图像、它的打包方式以及您尝试传递所有这些变量的方式似乎有些问题。
请查看有关如何使用 ENTRYPOINT 和 CMD 的 Docker Image CMD 部分。
这个问题有一些解释docker-oci-runtime-create-failed-container-linux-go349-starting-container-pro