【发布时间】:2021-10-21 22:31:14
【问题描述】:
我有一个带有容器的 docker-compose 部署,例如:
version: "3"
services:
web:
image: nginx
ports:
- "8080:80"
Docker 版本是 20.10.9,操作系统是 CentOS 7。
我需要阻止外部 IP 地址对 8080 端口的访问,除非指定。
但是iptables -A INPUT -p tcp -m tcp --dport 8080 --src ! <IP whitelist> -j DROP 不适用于 docker 容器。
在为 public 区域设置了 firewalld 的系统中,不适用于 Docker 容器。
DOCKER-USER 链无法按需要工作,因为我应该使用 --dport 80(docker 容器中的内部端口)而不是 dport 8080。但是我需要使用外部端口,因为内部端口 80 可以有很多容器,但外部端口是唯一的。
我用过
【问题讨论】: