让Docker端口映射受Firewall管理而非iptables

要让Docker容器的端口映射受系统防火墙(如firewalld或ufw)管理,而不是直接通过iptables,可以按照以下步骤配置:

方法一:禁用Docker的iptables规则

(1)编辑Docker配置文件:

bash 复制代码
vi /etc/docker/daemon.json

添加以下内容:

bash 复制代码
{
  "iptables": false
}

(2)重启Docker服务:

bash 复制代码
systemctl restart docker

方法二:与firewalld集成(推荐)

确保firewalld已安装并运行:

bash 复制代码
systemctl enable --now firewalld

将Docker接口添加到trusted区域:

bash 复制代码
firewall-cmd --permanent --zone=trusted --add-interface=docker0

允许特定端口通过firewalld:

bash 复制代码
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload

注意事项

1、修改这些设置后,你需要通过firewalld手动管理所有Docker容器的端口访问。

2、某些Docker网络功能可能会受到影响。

3、对于已存在的容器,可能需要重新创建才能使更改生效。

相关推荐
Bin Watson8 分钟前
Ubuntu安装Docker记录(基于阿里云)
ubuntu·阿里云·docker
fiveym8 分钟前
持续交付与持续部署(CD)深度解析:定义差异、流程架构与交付模式对比
运维·ci/cd·架构
PascalMing10 分钟前
ubuntu 24.04安装dotnet 10日志
linux·运维·ubuntu·dotnet10
optimistic_chen15 分钟前
【Docker入门】容器技术
linux·运维·服务器·docker·容器
小明_GLC16 分钟前
理解Docker、镜像Images、容器Container
docker·容器
努力搬砖的咸鱼16 分钟前
用 Docker 部署你的第一个微服务
docker·微服务·云原生·容器
Lueeee.16 分钟前
2.智梯云枢・全维管控广告系统——解决串口卡顿 + 优化稳定性
linux·运维·服务器
海清河晏11117 分钟前
Linux进阶篇:HTTP协议
linux·运维·http
水上冰石21 分钟前
如何查看k8s按照的jenkins插件的路径
容器·kubernetes·jenkins
oMcLin25 分钟前
如何在 CentOS 7.9 上配置并调优 Docker Swarm 集群,确保跨多个节点的高效服务发现与负载均衡?
docker·centos·服务发现