Docker镜像运行失败求助:导入镜像后启动报错咨询
Docker导入镜像后运行/启动报错的解决方案
针对「No command specified」报错
用docker image import导入的镜像大多没有预设启动指令(CMD/ENTRYPOINT),Docker不知道容器启动后该执行什么操作,所以触发报错。解决办法:
- 运行容器时手动指定启动命令,比如针对Linux镜像执行bash:
docker run -it imagename-b1:latest /bin/bash - 或者通过Dockerfile重新构建镜像,添加默认启动命令:
创建名为Dockerfile的文件,内容如下:
执行构建命令生成新镜像:FROM imagename-b1:latest CMD ["/bin/bash"]
之后用新镜像docker build -t imagename-b1:fixed .imagename-b1:fixed运行容器即可。
针对「exec: "--name": executable file not found」报错
这个错误是因为启动容器时参数顺序错误,把--name当成了要执行的命令,而非容器名称参数。解决办法:
- 调整参数顺序,
--name属于容器配置参数,要放在镜像名之前:
正确的docker run命令示例(指定容器名称+启动命令):docker run --name my-container -it imagename-b1:latest /bin/bash - 如果是启动已创建的容器,直接使用容器ID或名称即可,无需再加
--name参数:docker start my-container
内容的提问来源于stack exchange,提问作者Divad
相关产品推荐
相关产品推荐

