服务器 
首页 > 服务器 > 浏览文章

docker实践之从新镜像启动容器报错解决

(编辑:jimmy 日期: 2024/12/28 浏览:3 次 )

按照书中所写,输入以下命令:

$ sudo docker run -d -p 80 --name static_web yorkz0909/static_web \ nginx -g "daemon off;"

来启动新的容器,容器貌似启动了,但是会报以下错误:

35b5d1f047a51373ca71190b0eed504ba0540c32427f4637b967c7b4ad7fa217
docker: Error response from daemon: invalid header field value "oci runtime error: container_linux.go:247: starting
container process caused \"exec: \\\" nginx\\\": executable file not found in $PATH\"\n".

搜索了一下原因,可能是因为在启动的时候命令不对,于是在命令中加入/bin/sh,重新起了个名字static_web2,否则会报错命名冲突:

报错内容:

docker: Error response from daemon: Conflict. The name "/static_web1" is already in use by container
35b5d1f047a51373ca71190b0eed504ba0540c32427f4637b967c7b4ad7fa217. You have to remove (or rename) that container to be able to reuse that name..

输入正确的命令:

$ sudo docker run -d -p 80 --name <span style="color:#FF0000;">static_web2</span> yorkz0909/static_web <span style="color:#FF0000;">/bin/sh</span> \ nginx -g "daemon off;"
d918395d551b582ae1a446ff119d4832fe9bfb4a65e91b2ea1a75e36ffec6743 

运行后没有报错,当然,并不知道具体为什么,猜想可能是因为指定运行的命令,加入了指定的/bin/sh命令后就可以了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

上一篇:CentOS 6下root密码忘记的解决办法
下一篇:VMware虚拟机系统无法使用桥接联网的解决方法
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。