ufw无效 - Docker 暴露端口无法禁用【已解决】

教程分享 (97) 2024-11-20 09:38:59

环境和原因说明

Ubuntu 22LTS 使用 docker compose 部署的一个服务,端口绑定是 8080:80,nginx 反代到 localhost:8080.

ufw 启用,并 设置默认入栈拒绝sudo ufw default deny incoming,然后发现通过ip+端口8080也能访问。

通过 命令 iptables-save 查看防火墙,发现docker在防火墙添加了规则,然后就没走到ufw。端口就放了,故此导致ufw无效了。

root@dev:~# iptables-save |grep 8080
-A DOCKER ! -i br-f732b01ca22d -p tcp -m tcp --dport 8080 -j DNAT --to-destination 172.18.0.3:80

解决办法

方案一:禁用docker默认添加防火墙规则

修改docker的配置文件/etc/docker/daemon.json(若没有就新建一个), 添加如下内容:

{ "iptables": false }

重启docker:

systemctl restart docker

此时再启动docker容器, 就不会修改防火墙了.

方案二:docker-compose.yml配置修改

docker-compose.yml配置中,端口部分

8080:80 修改为:127.0.0.1:8080:80

重启生效

 

关联文章:

 

https://www.leftso.com/article/2411191705309263.html

相关文章
环境和原因说明Ubuntu 22LTS 使用 docker compose 部署的一个服务,端口绑定是 8080:80,nginx 反代到 localhost:
防火墙综述linux 防火墙,常用的包括三种:ufw 、 firewalld 和 iptables。学习难度依次递增。常见的防火墙分为两种,一种是3层防火墙,另
网络信息 主机1 192.168.79.128主机2 192.168.79.133主机1/2关闭防火墙sudo ufw disable  修改 docker0 ip  sudo vi /lib/...
1.安装ufw防火墙sudo apt-get install ufw提示:除开精简版一般云提供商LTS版本(18/22LTS)都是默认安装的。 2.查看防火墙启
docker 常用命令整理(持续更新)docker运行容器资源相关 查看所有运行docker的资源消耗情况docker stats 查看指定运行容器资源消耗情况docker stats 容器ID...
一. Docker-Compose 简介1. Docker-Compose 简介Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。Docke...
docker入门使用教程/linux(centos)系统docker制作教程
安装篇国外:curl -fsSL https://get.docker.com | bash国内:curl -fsSL https://get.docker.com | bash -s dock...
Docker 默认工作目录是/var/lib/docker ,某些情况下不够用需要迁移到新的磁盘,非系统盘。则参考下面迁移办法Docker 工作目录相关查看do
在执行多次docker-compose build 之后,我们通过命令`docker images`可以看到很多的REPOSITORY 为<none&gtl; 且tag 也是<non...
环境准备docker swarm 集群环境NFS服务资源文件docker-mutil-stack.zip(访问密码: 9987)1.创建overlay网络网络名称:stackMutilNetwo...
docker与docker-compose配置文件版本对应关系Compose file version 3 reference  Compose file formatDocker Engine...
不知从何时开始,get.docker.com download.docker.com 在腾讯云已经无法访问了,导致之前分享的在线安装方案间接失效,故此记录国内Ubuntu 安装docker的另一种方法
docker-compose 报错:[root@VM_0_17_centos gateway]# docker-compose up Building gatewayServer unkno...
添加docker-ce的yum源实际上,添加的这个yum源仍然是el7的yum install -y yum-utils yum-config-manager --add-repo htt...