我希望了解CMD和ENTRYPOINT的工作原理。因此,我创建了一个非常简单的Dockerfile
。
FROM scratch
CMD echo "Hello First"
ENTRYPOINT echo "Hello second"
然后我构建了这个镜像:
docker build -t my_image .
以下是日志记录:
步骤 1/3:来自 scratch ---> 步骤 2/3:CMD echo "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: 容器运行时创建失败: container_linux.go:344: 启动容器进程导致"exec: \"/bin/sh\": stat /b in/sh: no such file or directory": 未知错误.
请问有人能帮忙解决这个错误吗?