江湖救急,docker容器映射端口无法启动

docker镜像用的是服务器上的centos6.9,导入服务器镜像到本机的docker中,本机环境同为centos,但就只安装了docker,docker镜像里面集成了java、mysql、tomcat等环境,通过命令docker run -d -p 3306:3306 centos:6.9 ,将本机 3306端口映射到容器的 3306 端口,发现无法启动

图片说明

3个回答

老哥,你这个容器实例都退出了,还怎么start啊?

而且,你运行容器时没有指定执行的命令啊,如果你在制作镜像时也没有指定entry的话,那就是一个什么也不做的容器,运行即结束。

直接删除此实例,然后运行一个新的实例,并指定运行的任务命令

$ # delete old container
$ docker rm <old-container-id>
$ # run a new instance
$ docker run --rm -d --name centos -p 3306:3306 centos:6.9 <command>
ZhihengTao
ZhihengTao 回复weixin_38954534: 应该不会是因为端口映射太多,最多是欲映射端口被占用。如果看不出原因,可以用strace看一下在哪里出现异常。用法strace <command>
一年多之前 回复
weixin_38954534
weixin_38954534 我是启动就直接直接退出的,容器环境搭建后commit为镜像的。然后再从镜像映射端口新生成的容器,关键这个新生成的容器就直接退出了,docker run --name centos -d -i -p 3306:3306 -p 8060:8060 -p 8070:8070 -p 8090:8090 -v /home/dajing:/home centos/environment:6.9 /root/run.sh,这个命令生成的容器没有启动状态;docker run --name mysqlserver -d -i -p 3306:3306 centos/environment:6.9 这个命令生成的容器,却是正常,直接运行,难道是映射端口太多的缘故?
一年多之前 回复

因为你后面没有加一个一直执行的命令,默认是/bin/bash。运行一下就退出来了。

docker启动不了有几个原因,一个是程序挂了,一个是端口被占用了。
你可以看下日志 docker logs [id]
先确定原因。
如果端口那你懂得拉,如果是程序问题,那你自己玩咯

看你的端口像是mysql,你可以直接找个mysql的镜像,方便多了

最好设置下-v,不然容器删掉数据也就没了

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐