解决CentOS 8 Docker容器无法上网的问题
CentOS 8已经发行好长一段时间,为了尝鲜在Online独服上安装了CentOS 8系统,随之问题来了,发现Docker容器无法访问外网,而CentOS 7上则不存在这个问题。

排错分析
一开始怀疑是Docker DNS设置问题,导致Docker容器无法解析。遂修改配置文件/etc/docker/daemon.json设置DNS:
{
"dns" : [
"8.8.8.8",
"1.1.1.1"
]
}
修改后重启Docker服务,发现Docker容器还是无法联网。
解决办法
通过搜索了解到CentOS 8上防火墙发生了一些变化,防火墙原来使用iptables,现在使用nftables,猜测可能是转发引起的问题。通过搜索终于在Github上找到类似的情况:DNS Not Resolving under Network [CentOS8],解决办法为:
编辑firewalld配置文件/etc/firewalld/firewalld.conf,将:
FirewallBackend=nftables
修改为:
FirewallBackend=iptables
并重启Firewalld:systemctl restart firewalld.service
最后再重启下Docker:systemctl restart docker,验证问题解决。
总结
- 可通过修改
/etc/docker/daemon.json设置Docker DNS - CentOS 8防火墙由
iptables变更为了nftables - 可通过修改Firewalld配置文件
/etc/firewalld/firewalld.conf将nftables换回iptables
上一篇:CentOS 7关闭/开启SELinux内核简单方法
栏 目:其它服务器
下一篇:使用docker stats命令查看Docker显示容器资源使用情况
本文标题:解决CentOS 8 Docker容器无法上网的问题
本文地址:https://zz.feitang.co/server/36618.html
您可能感兴趣的文章
- 02-02hadoop动态增加和删除节点方法介绍
- 02-02干货 | Linux新手入门好书推荐
- 02-02linux系统下MongoDB单节点安装教程
- 02-02Linux下nginx生成日志自动切割的实现方法
- 02-02Centos 6中编译配置httpd2.4的多种方法详解
- 02-02CentOS7 下安装telnet服务的实现方法
- 02-02分布式Hibernate search详解
- 02-02Hadoop对文本文件的快速全局排序实现方法及分析
- 02-02CentOS6.3添加nginx系统服务的实例详解
- 02-02Hadoop编程基于MR程序实现倒排索引示例


阅读排行
推荐教程
- 12-07一文教你怎么选择Tomcat对应的JDK版本
- 12-07tomcat启动报错jar not loaded的问题
- 12-10docker start启动容器后仍然exit状态的解决
- 12-23linux中ftp无法访问怎么办
- 12-19Zabbix SAML SSO 登录绕过漏洞的操作流程
- 12-13k8s编排之Deployment知识点详解
- 12-10Linux下如何安装Logstash
- 12-15Docker-Compose搭建Spark集群的实现方法
- 12-11docker存储目录迁移示例教程
- 01-07windows server 2008安装配置DNS服务器




