栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

解决CentOS中docker容器无法被物理机访问

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

解决CentOS中docker容器无法被物理机访问

CentOS安装Docker后运行容器在物理机访问不了的问题

这个问题花了我一个下午一点一点的排查,最终找到解决方案

如果文章成功帮助各位解决了问题,希望可以给博主点点赞转发,谢谢。

第一步

首先确保自己运行的时候有映射端口
以运行Nginx为例子:

docker run --name my-nginx -p 80:80 -v html:/usr/share/nginx/html -d nginx 

## --name:容器名字
## -p:第一个端口为本机端口,第二个端口为docker容器内端口,进行映射
## -v:挂载数据卷
## -d:后台运行
第二步

若已经进行端口映射,请检查防火墙是否关闭

systemctl status firewalld

## 如果运行中可直接使用 systemctl stop firewalld 关闭	(仅供学习情况)
第三步

假如防火墙关闭仍然无法访问
则检查网桥是否出现问题

brctl show

## 如果显示无指令 则使用以下命令下载
yum install -y bridge-utils


如果该图上显示 8000.00000000000 以及无挂载容器,可能是网桥出现问题

先将docker服务暂停

systemctl stop docker

然后添加网桥

brctl addbr br0

添加ip字段

ip addr add 172.16.0.1/24 dev br0

启用网桥br0

ip link set dev br0 up

修改docker默认网桥

vim /etc/docker/daemon.json

{
{"bridge":"br0"}
}

重启docker

systemctl start docker 

重新查看网桥

brctl show


可以看到新建的网桥成功挂在了容器,也可以成功访问Nginx了

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/893726.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号