首页  >  文章  >  运维  >  docker启动后无法访问怎么办

docker启动后无法访问怎么办

藏色散人
藏色散人原创
2022-11-28 09:40:5710578浏览

docker启动后无法访问的解决办法:1、执行“docker run -itd -p”命令;2、输入“docker ps -a”查看“ports”;3、检查linux版本和docker版本;4、输入“yum update”命令行升级内核;5、重启内核即可。

docker启动后无法访问怎么办

本教程操作环境:Windows7系统、Docker 20.10.11版、Dell G3电脑。

docker启动后无法访问怎么办?

Docker容器启动成功浏览器却无法访问(Docker容器启动后查看docker ps -a 看不到ports(ports栏为空)| linux内核版本和docker版本不兼容)

场景:Docker容器启动成功浏览器却无法访问

初学Docker容器的基本操作,拉取了tomcat镜像,输入运行容器命令运行容器一系列操作都没有问题,但是在浏览器访问端口时却访问不到

[root@localhost ~]# docker run -d -p 8081:8080 --name mytomcat b8dfe9ade316

867d8f3f04f8776a5bd062b70f41b73.jpg

1、Docker容器启动后查看docker ps -a 看不到ports(ports栏为空)

各种命令行试探,终于在输入了显示所有的容器信息命令,发现ports那一行是空的!!!

[root@localhost ~]#  docker ps -a

然后我不知道要找什么关键词来形容这种情况,尝试了各种方法,比如说卸载重装旧版本的tomcat、关闭防火墙,还有设置防火墙放行或限制指定IP和端口(firewall)都不行,甚至还格式化输出显示指定列还是看不到ports,几经周转最后终于找到了Jacen_Chou博主的方法尝试了一下,成功了!!!谢谢Jacen_Chou博主的帮助,我的心情就像博主最后说的那句话一样,看到成功的那一刻,激动得差点哭了呜呜呜

博主说只要在-d前面加上it即可,我也终于知道了原来这种情况叫Docker端口映射不起作用

[root@localhost ~]# docker run -itd -p 8081:8080 --name mytomcat b8dfe9ade316

再输入docker ps -a,终于看到了ports这一行出现了内容

0556d3a96e9f8bebe23d1fb5dbb722c.jpg

2、linux内核版本和docker版本不兼容

我以为问题已经解决了,按道理来说没问题了,兴高采烈的叒打开浏览器,还是不可以5555,又继续找原因,回归到最原始的关键词,docker容器启动成功却无法访问,在一顿查找后看到清人博主说可能是linux系统内核低,而docker版本是最新版所以不兼容。

我赶紧查看了自己的linux版本和docker版本,结果真的是这样,我的docker是 20.10.11版本,而linux只有3.8,好家伙搞了半天原来是版本不兼容的问题,赶紧输入yum update命令行升级内核

#查看linux内核版本
[root@localhost ~]# uname -sr
#查看docker版本
[root@localhost ~]# docker version
#升级linux内核版本,升级所有包同时也升级软件和系统内核
[root@localhost ~]# yum update -y

漫长的升级等待,建议大家去搜一下怎么升级大版本的linux内核版本,因为yum update只适合小版本升级,升级大版本步骤挺多的我就懒得试了。

最后别忘了升级完之后重启centos,重启容器

最后的最后,终于看到了我那该死的汤姆猫~~

883d1db3b2ab97fc7fcaf3f0578bd7d.jpg

解决方案:

查看Docker端口映射是否成功,还有linux内核版本和docker版本是否兼容,如果不兼容有两种方法,要么降低docker版本(卸载高版本重装)要么升级linux内核版本,升级完别忘了重启宿主机。

完结撒花~~~

推荐学习:《docker视频教程

以上是docker启动后无法访问怎么办的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn