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

相关推荐
东东最爱敲键盘11 分钟前
二阶段总结
运维
Benszen14 分钟前
云计算基础-13:Linux网络管理实战-1
linux·运维·云计算
扬帆破浪25 分钟前
文档自动检查:用 Claude Code、OpenClaw 审 WPS 文件:预览、批注、改正文
运维·服务器·wps
zt1985q1 小时前
本地部署开源网络书签与内容管理工具 Karakeep 并实现外部访问
运维·服务器·网络·数据库·网络协议·开源
具身智能进化论2 小时前
协作机器人产业进入规模化部署期,未来几年的增长从何而来
大数据·运维·人工智能·机器人·自动化·工厂方法模式
爱莉希雅&&&3 小时前
K8s NFS+StorageClass+PV/PVC+Deployment 实战笔记
笔记·容器·kubernetes
yunyi3 小时前
改个 SSH 端口,我把自己锁在了服务器外面
运维·后端
GlueNa2SiO33 小时前
06-Docker存储与数据持久化
笔记·学习·docker
一位正在转型AI全栈的前端工程师4 小时前
前端转全栈:从 502 到 200,我的第一个 Docker+Nginx+Node.js 项目
docker·容器
jason_renyu5 小时前
Linux Docker 服务管理与排查实战指南(新手速查版)
linux·docker·新手docker学习·docker日志查询·docker服务管理