Docker IP-TABLES错误

嗨,我对这些docker工具很陌生。 我试图用bitbucket启动一个docker容器,但是我得到了这个输出。

root@rv1175:~# docker run -v bitbucketVolume:/var/atlassian/application-data/bitbucket --name="bitbucket" -d -p 7990:7990 -p 7999:7999 atlassian/bitbucket-server 6da32052deeba204d5d08518c93e887ac9cc27ac10ffca60fa20581ff45f9959 docker: Error response from daemon: driver failed programming external connectivity on endpoint bitbucket (55d12e0e4d76ad7b7e8ae59d5275f6ee85c8690d9f803ec65fdc77a935a25110): (iptables failed: iptables --wait -t filter -A DOCKER ! -i docker0 -o docker0 -p tcp -d 172.17.0.2 --dport 7999 -j ACCEPT: iptables: No chain/target/match by that name. (exit status 1)). root@rv1175:~# 

每次我尝试激活任何docker集装箱时,我都得到了相同的输出。 有人能帮我吗?

PS多一个问题。

172.1.0.2是什么意思? 我只能说,这不是我的ip。

172.1 7 .0.2将是在默认的Docker桥接networking(docker0虚拟接口)内分配给容器的IP。 尽pipe您正在指示Docker引擎“发布”(Docker术语中)两个端口,但这些内容无法从外部访问。

为此,引擎使用iptables创build端口转发规则,iptables会将所有传入stream量转发到主机所有接口上的端口tcp / 7990和tcp / 7999到docker0接口上的172.17.0.2端口(容器中的进程有希望收听)。

它看起来像DOCKER iptables链,发生这种情况不存在。 也许你有其他的工具来操纵iptables,这可能会抹去Docker引擎正在做的事情。 尝试识别它们并重新启动Docker引擎(它应该在启动时重新创build所有内容)。

您还可以指示引擎不要通过适当configurationDocker守护进程来操作iptables。 如果要使用网桥驱动程序,则需要自行设置(尽pipe您也可以使用主驱动程序)。 这是一个很好的例子。