docker 启动 mysql 通过防火墙设置端口无法访问解决方案

1、问题描述:通过 docker compose 启动mysql服务,然而在防火墙添加了3306端口后却无法访问,但是关闭防火墙后又可以访问mysql数据库。

解决方案: 重启 docker 后解决:systemctl restart docker

如果没有解决问题则执行如下命名后可以解决

clike 复制代码
docker-compose down -v             # 删除容器,同时删除相关的卷(volumes)
docker network prune               # 清理未使用的 Docker 网络
iptables -t nat -F DOCKER-USER     # 清除 Docker-User 链中的规则
iptables -t nat -F DOCKER          # 清除 Docker 链中的规则
iptables -t filter -F DOCKER      # 清除 Filter 表中与 Docker 相关的规则
iptables -P FORWARD ACCEPT         # 允许转发流量
systemctl restart docker           # 重启 Docker 服务

2、执行 docker-compose up -d 报错如下:

clike 复制代码
Creating network "opt_my_network" with driver "bridge"
ERROR: Failed to Setup IP tables: Unable to enable SKIP DNAT rule:  (iptables failed: iptables --wait -t nat -I DOCKER -i br-7419acc57c71 -j RETURN: iptables: No chain/target/match by that name.
 (exit status 1))

重启 docker 后解决:systemctl restart docker

相关推荐
我是一颗柠檬7 小时前
【MySQL全面教学】MySQL面试高频考点汇总Day15(2026年)
数据库·后端·mysql·面试
EMTime8 小时前
Docker运行OpenWRT
运维·docker·容器
身如柳絮随风扬8 小时前
数据库读写分离:从原理到实战,构建高并发系统
数据库·mysql
zyl8372110 小时前
Docker 使用手册
运维·docker·容器
我是一颗柠檬11 小时前
【MySQL全面教学】MySQL性能优化实战Day13(2026年)
数据库·后端·sql·mysql·性能优化·database
AI人工智能+电脑小能手12 小时前
【大白话说Java面试题 第84题】【Mysql篇】第14题:为什么用 InnoDB 存储引擎的表建议用整型的自增主键?
java·开发语言·数据库·mysql·面试
“码”力全开12 小时前
解耦异构算力与多协议接入:基于Docker与源码交付的开源企业级GB28181/RTSP边缘计算AI视频管理平台架构深度解析
人工智能·docker·开源
牧羊狼的狼12 小时前
MySQL 四大索引失效写法 + 业务替代最优解决方案
mysql·索引失效
Dxy123931021613 小时前
三种方式避坑:案例 + 解决方法
python·mysql