让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、对于已存在的容器,可能需要重新创建才能使更改生效。

相关推荐
angushine4 小时前
Docker方式安装Prometheus+Grafana+Node Exporter
docker·grafana·prometheus
初学者_xuan4 小时前
零基础新手小白快速了解掌握服务集群与自动化运维(十五)Redis模块-Redis数据库基础
运维·数据库·自动化
DooTask官方号5 小时前
DooTask 1.3.38 版本更新:MCP 服务器与 AI 工具深度融合,开启任务管理新体验
运维·服务器·人工智能·开源软件·dootask
KubeSphere 云原生8 小时前
云原生周刊:在 Kubernetes 上运行机器学习
云原生·容器·kubernetes
码界奇点8 小时前
通往Docker之路从单机到容器编排的架构演进全景
docker·容器·架构
阿Y加油吧8 小时前
Docker从入门到实战——含容器部署、docker基础、项目部署
运维·docker·容器
st7802069 小时前
Debian 13.1 下编译Openwrt24
运维·debian·openwrt
Wang's Blog9 小时前
Linux小课堂: NGINX反向代理服务器配置与实践
linux·运维·nginx
运维行者_10 小时前
运维实战:SSL 证书故障避坑指南(精简版)
运维·网络协议·ssl
AI扶我青云志10 小时前
AGENT 和自动化工作流的区別
运维·自动化