我放棄了。我在ubuntu 16.04下使用Docker 1.12.0加強了UFW。碼頭互聯網連接iptables = false
該機擁有2個接口 - 一個公開了(eth0)和一個就像我與以前的版本我配置「的iptables」是假的專用網絡(eth1的)
Server Version: 1.12.3
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 15
Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: null bridge host overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Security Options: apparmor seccomp
Kernel Version: 4.4.0-47-generic
Operating System: Ubuntu 16.04.1 LTS
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 488.5 MiB
Name: image-base
ID: 2473:FGJQ:MEEC:CEWY:BSLR:SYB5:EXMO:WJBE:7MMM:DIZH:NJQF:L5NA
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
WARNING: No swap limit support
Insecure Registries:
127.0.0.0/8
所以碼頭工人不會改變我的防火牆。
但在最新版本的docker(11+)中,此命令有副作用 - 重啓後 - docker容器停止訪問網絡(ping www.google.com)。
我確認了一次又一次。 如何重現: - 停止搬運工守護
sudo systemctl stop docker
我的iptables配置= FALSE通過將文件/etc/docker/daemon.json:
{
"iptables" : false
}
(這是那裏唯一配置)
啓動守護進程:
sudo systemctl start docker
docker run --rm python ping www.google.com
即使會爲你工作 - 如果你重啓系統 - 它將停止工作......你有任何解決方案?
我檢查了我的iptables規則並重新啓動系統後,我失去了這些規則:
:PREROUTING ACCEPT [8:496]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:DOCKER - [0:0]
-A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
-A OUTPUT ! -d 127.0.0.0/8 -m addrtype --dst-type LOCAL -j DOCKER
-A POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE
-A POSTROUTING -s 172.18.0.0/16 ! -o br-a0b355ce53ac -j MASQUERADE
-A DOCKER -i docker0 -j RETURN
-A DOCKER -i br-a0b355ce53ac -j RETURN
# same
:DOCKER - [0:0]
:DOCKER-ISOLATION - [0:0]
# same
-A FORWARD -j DOCKER-ISOLATION
-A FORWARD -o docker0 -j DOCKER
-A FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i docker0 ! -o docker0 -j ACCEPT
-A FORWARD -i docker0 -o docker0 -j ACCEPT
-A FORWARD -o br-a0b355ce53ac -j DOCKER
-A FORWARD -o br-a0b355ce53ac -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i br-a0b355ce53ac ! -o br-a0b355ce53ac -j ACCEPT
-A FORWARD -i br-a0b355ce53ac -o br-a0b355ce53ac -j ACCEPT
# same
-A DOCKER-ISOLATION -i br-a0b355ce53ac -o docker0 -j DROP
-A DOCKER-ISOLATION -i docker0 -o br-a0b355ce53ac -j DROP
-A DOCKER-ISOLATION -j RETURN
謝謝!
Docker在系統上通常與ufw搭配使用。你在系統上遇到docker + ufw會遇到什麼樣的麻煩? – programmerq