【问题标题】:Docker-compose: must disable firewall and restart docker service when docker-compuse updocker-compose: docker-compose up 时必须关闭防火墙并重启 docker 服务
【发布时间】:2020-03-05 22:09:30
【问题描述】:

我开始学习如何使用 Docker 和 docker-compose,每次重新启动计算机时,我都会在执行 docker-compose up 时收到此消息:

使用默认驱动程序创建网络“dockerlemp_default”

错误:无法对过滤器链进行编程:iptables 失败:iptables --wait -I FORWARD -o br-74bd0d3628e8 -j DOCKER:iptables v1.6.1:无法加载目标“DOCKER”:没有这样的文件或目录

尝试 `iptables -h' 或 'iptables --help' 了解更多信息。

一旦通过执行命令sudo ufw disable 禁用防火墙并且一旦通过命令systemctl restart docker 重新启动docker 服务,我就可以正常启动我的docker-compose。 但我每次重启都必须这样做。

谁能解释一下 iptables 的问题是什么以及如何解决这个问题? 非常感谢。

仅供参考,这是我的设置:

Lenovo Ideapad 510S-08ISH - Intel(R) Core(TM) i5-6400 CPU @ 2.70GHz

Ubuntu 18.04.3 LTS Bionic(窗口管理器 i3wm)

Docker 18.09.7

docker-compose 1.17.1

【问题讨论】:

  • 使用 #iptables -F 删除 iptables,然后重新启动 docker #/etc/init.d/docker restart。确保您的 docker 首先启动您的 iptables 在 /etc/rc*.d/

标签: docker docker-compose ubuntu-18.04


【解决方案1】:

即使在 Debian/Ubuntu 上,最新的 Docker 版本确实以足够正确的方式使用 iptables 的规则进行操作(你不使用 selinux,对吗?)。所以这个错误意味着一些库/配置被破坏了。请尝试以下步骤:

  1. 检查链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,反之亦然)。在这种情况下,不要忘记先卸载 Docker。
  2. 如果出现DOCKER 链,则检查if-pre-up 脚本中是否有iptables-restore 命令(通常为/etc/network/if-pre-up.d/iptables)。如果是,则尝试为iptables-restore 重新创建源文件,甚至暂时禁用iptables-restore
  3. 检查您的 Docker 配置(/etc/docker/daemon.json/etc/default/docker)。也许某些应用程序在那里写了一些不需要的选项。

【讨论】:

    【解决方案2】:

    我使用sudo docker-compose时遇到了同样的错误,我使用this answer

    sudo iptables -t filter -F
    
    sudo iptables -t filter -X
    
    systemctl restart docker
    

    它完全奏效了。

    【讨论】:

      猜你喜欢
      • 2020-06-30
      • 2018-12-18
      • 1970-01-01
      • 1970-01-01
      • 2022-01-16
      • 2019-07-22
      • 1970-01-01
      • 1970-01-01
      • 2022-01-23
      相关资源
      最近更新 更多