docker run -i -t testing bash
docker: Error response from daemon: OCI runtime create failed: container_linux.go:345: starting container process caused "exec: \"bash\": executable file not found in $PATH": unknown.我在Docker Hub中创建了镜像,它是私有镜像。
FROM scratch
# Set the working directory to /app
WORKDIR Desktop
ADD . /Dockerfile
RUN ./Dockerfile
EXPOSE 8085
ENV NAME testing这在我的Dockerfile中
我试着运行它,当我运行docker图像时,我得到了详细信息
发布于 2019-10-14 17:37:27
我认为你需要在下面的命令prompt.useing中进行登录。
docker login -u username -p password url发布于 2019-10-14 17:48:44
除了不应该导致这些的登录之外,因为你在你的本地系统上构建了一个镜像,我假设它应该存在于本地系统上,如果本地系统上不存在,那么它只会拉取镜像,真正的原因是你正在从scratch构建一个镜像,并且scratch镜像中没有二进制文件,甚至没有bash或sh。
第二个错误:
RUN ./Dockerfile您的Dockerfile是一个文件,而不是二进制文件,而这里您正在尝试使用RUN指令执行。
虽然scratch出现在集线器上的Docker存储库中,但您不能提取、运行它,也不能标记任何名称为scratch的图像。相反,您可以在Dockerfile中引用它。例如,要使用scratch创建最小容器:
FROM scratch
COPY hello /
CMD ["/hello"]而在这里,hello可以是一个可执行文件,比如C++编译文件。
但我建议在Docker中使用Busybox或Alpine作为基础镜像,它们都有一个外壳,并且都在5MB下。
FROM busybox
CMD ["echo","hello Docker!"]现在构建并运行
docker build -t hello-docker .
docker run --rm -it hello-dockerhttps://stackoverflow.com/questions/58373989
复制相似问题