我已经使用我们的应用程序创建了映像,运行该映像后,我可以看到还创建了 docker 容器,当我尝试进入 docker 容器时出现以下错误,请您在这里帮助我。
> <块引用>""""OCI 运行时执行失败: 执行失败: container_linux.go:349: 启动容器进程导致 "exec: "bash": 在 $PATH 中找不到可执行文件": unknown""""
我已尝试执行以下所有命令
docker run -it exec 962f5d99458c
docker run -it 962f5d99458c
docker exec -it 962f5d99458c /bin
docker exec -it 75f6cb44f9e1
docker run --rm -ti 962f5d99458c sh
docker run --rm -ti 962f5d99458c /bin
docker exec --rm -ti 962f5d99458c /bin
docker exec -ti 962f5d99458c /bin
docker exec -ti 962f5d99458c \bin
docker exec -it 75f6cb44f9e1 bash
但没有运气......你能在这里帮助我吗。
答案 0 :(得分:0)
里面可能没有bash
,这取决于您选择的图像作为基础。通常如果有任何外壳,您可以使用 sh
:
# create a container from image and get straight into shell
docker run -it <image> sh
# or start a container in background, then get into shell
docker run -d <image>
docker exec -it <container> sh
如果您使用临时镜像作为基础(即 Dockerfile 中的 FROM: scratch
),则内部没有 shell。
另外很高兴知道 Alpine Linux 使用 ash
而不是 bash
。虽然也有 sh
,但使用 ash
对我来说似乎更方便。