docker启动容器服务后访问失败的解决方案
关于docker启动容器服务之后,宿主机访问失败(解决方法)
注:在进行docker容器启动宿主机进行容器访问时,无需进行网络的配置,docker容器在启动时会自动解决
第一种原因及修改方法
在进行启动的时候,启动语句中没有进行端口映射,导致在进行访问的时候无法找到正确的端口
正确的镜像的启动方式为
docker run --name 设置容器名 -it -d -p [宿主机端口号]:[容器启动端口号] 要启动的镜像
#-d 作用在镜像启动之后不进入容器内部,使容器在后台运行
#-i 交互式操作
#-t 终端
#/bin/bash 为了希望存在一个交互式的shell (可以不写)
正常容器启动后的截图
进行访问:访问成功
第二种:容器启动没有问题,并且在容器内部可以进行容器访问,但是外部无法进行访问
咋查看自己centos的版本与docker的版本是否兼容,建议采用linux对linux内核版本进行升级。
docker容器启动没有问题
进入容器内部,查看容器内部是否可以正常访问
#进入容器内部
docker exec -it [容器id/容器名称] /bin/bash
#进入之后通过命令查看是否可以访问成功
curl http://localhost:容器端口号
进入容器
进行命令测试,访问成功,可进行页面代码的读取
#查看centos的版本信息
cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
#查看linux内核版本
[root@localhost ~]# uname -sr
#查看docker版本
[root@localhost ~]# docker version
#升级linux内核版本,升级所有包同时也升级软件和系统内核
[root@localhost ~]# yum update -y
注:yum update -y只能对linux系统进行小版本的升级,如需大版本升级,自行查找大版本的升级命令与方法
升级完成后,访问成功
update -y只能对linux系统进行小版本的升级,如需大版本升级,自行查找大版本的升级命令与方法
升级完成后,访问成功