Docker compose:必须在Docker计算时禁用防火墙并重新启动Docker服务
我开始学习如何使用Docker和Docker compose,每次重新启动计算机时,我在进行Docker compose时都会收到以下消息: 使用默认驱动程序创建网络“dockerlemp_default” 错误:未能编程筛选器链:iptables失败:iptables--wait-I FORWARD-o br-74bd0d3628e8-j DOCKER:iptables v1.6.1:无法加载目标“DOCKER”:没有这样的文件或目录 有关更多信息,请尝试“iptables-h”或“iptables--help” 一旦通过执行命令Docker compose:必须在Docker计算时禁用防火墙并重新启动Docker服务,docker,docker-compose,ubuntu-18.04,Docker,Docker Compose,Ubuntu 18.04,我开始学习如何使用Docker和Docker compose,每次重新启动计算机时,我在进行Docker compose时都会收到以下消息: 使用默认驱动程序创建网络“dockerlemp_default” 错误:未能编程筛选器链:iptables失败:iptables--wait-I FORWARD-o br-74bd0d3628e8-j DOCKER:iptables v1.6.1:无法加载目标“DOCKER”:没有这样的文件或目录 有关更多信息,请尝试“iptables-h”或“iptab
sudo ufw disable
禁用了防火墙,并且通过命令systemctl restart docker
重新启动了docker服务,我就可以正常编写docker了。
但我每次重启都要这么做
有人能解释一下iptables的问题是什么,以及如何解决这个问题吗?
多谢各位
仅供参考,以下是我的设置:
联想Ideapad 510S-08ISH-英特尔(R)核心(TM)i5-6400处理器@2.70GHz
Ubuntu 18.04.3 LTS仿生(窗口管理器i3wm)
Docker 18.09.7
docker compose 1.17.1
即使在Debian/Ubuntu上,Docker的最新版本也确实以足够正确的方式使用了
iptables
的规则(你不使用selinux
,是吗?)。因此,此错误意味着某些libs/config被破坏。请尝试以下步骤:
DOCKER
是否出现在iptables
的规则中(iptables--list rules | grep'\-N\DOCKER'
)。如果没有,则可以将命令iptables-N DOCKER
添加到If-pre-up
脚本(/etc/network/If-pre-up.d/iptables
)。这只是权宜之计,更好的解决方案是重新安装iptables
和/或docker
后者取决于您如何安装它。也许改变方法(apt get install docker.io
而不是wget-qO-https://get.docker.com/ |sh
,反之亦然)。在这种情况下,别忘了先卸载DockerDOCKER
链,则检查If-pre-up
脚本中是否有iptables restore
命令(通常为/etc/network/If-pre-up.d/iptables
)。如果是,则尝试为iptables restore
或甚至临时禁用iptables restore
重新创建源文件/etc/Docker/daemon.json
和/etc/default/Docker
)。也许某个应用程序在那里编写了一些不需要的选项