У меня машина Debian 10 Buster, работающая с последней версией Docker из внешнего и официального репозитория. Моя цель - позволить контейнеру прослушивать только эти два (примера) IP-адреса на порте 80:
docker-compose.yml:
version: '3.7'
services:
traefik:
image: traefik:latest
network_mode: host # I need it to see the clients IPs
ports:
- 100.100.100.100:80:80
- 1000:1000:1000:1000::1:80:80
command:
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--providers.docker.watch=true"
- "--entrypoints.web.address=:80"
nginx: [...]
Но дажепосле перезапуска контейнеров и самого сервера сервер все еще прослушивал все IP-адреса:
netstat -tulpn
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp6 0 0 :::80 :::* LISTEN 2170/traefik
tcp6 0 0 :::443 :::* LISTEN 2170/traefik