【发布时间】:2019-07-16 04:18:42
【问题描述】:
我想了解 CMD 和 ENTRYPOINT 的工作原理。所以,我只是创建了一个非常简单的Dockerfile
FROM scratch
CMD echo "Hello First"
ENTRYPOINT echo "Hello second"
然后我建立这个图像:
docker build -t my_image .
日志如下:
第 1/3 步:从头开始 ---> 第 2/3 步:CMD 回显“Hello First”---> 使用缓存 ---> 9f2b6a00982f 步骤 3/3 : ENTRYPOINT echo "Hello second" ---> 使用缓存 ---> 1bbe520f9526 构建成功 1bbe520f9526 成功标记 my_image:latest 安全警告:你 正在针对非 Windows Docker 从 Windows 构建 Docker 映像 主持人。添加到构建上下文的所有文件和目录都将具有 '-rwxr-xr-x' 权限。建议仔细检查并重置 敏感文件和目录的权限。
当我创建此图像的容器时,它返回:
docker run my_image
错误是:
docker:来自守护进程的错误响应:OCI 运行时创建失败: container_linux.go:344:启动容器进程导致“exec: \"/bin/sh\": stat /b in/sh: 没有这样的文件或目录": 未知。
有人可以帮我解决错误吗?
【问题讨论】:
-
我想 edit 你的问题来修复 Docker 构建脚本的格式和错误消息,但我猜不出它们的真实样子。请对计算机消息使用代码格式,或者至少不要重新包装它们。
标签: bash shell docker dockerfile