dockerデーモンがサンドボックスにインターフェイスを追加できないということはどういう意味ですか?

dockerデーモンがサンドボックスにインターフェイスを追加できないということはどういう意味ですか?

私はいくつかのドッカーコンテナを実行していてそれを再構築することにしました(大きな群れを置くのではなく、依存サービスを収集するフォルダに構成を分割します)。引っ越すまで、すべてがうまくいきました。ホームアシスタント構成。

「外部」と表示されているすべてのコンテナ(個人のDockerネットワークの外部)が単一のネットワークを共有するように強制する以外は、以前の設定で何も変更しませんでした。 20以上の異なるコンテナで動作します。

  hass:
    devices:
      - /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
    image: homeassistant/home-assistant:2022.7
    network_mode: host
    restart: unless-stopped
    volumes:
      - /etc/docker/domotique/data/hass:/config
      - /etc/localtime:/etc/localtime:ro
    depends_on:
      - mqtt
    networks:
      - srv

(...)

networks:
  srv:
    external: true
    name: srv

このコンテナの起動中にエラーが発生しました。

root@srv /e/d/domotique# docker-compose up hass
[+] Running 1/0
 ⠿ Container domotique-mqtt-1  Running                                                                             0.0s
Attaching to domotique-hass-1
Error response from daemon: failed to add interface veth6eb29e9 to sandbox: error setting interface "veth6eb29e9" IP to 172.18.0.33/16: cannot program address 172.18.0.33/16 in sandbox interface because it conflicts with existing route {Ifindex: 7 Dst: 172.18.0.0/16 Src: 172.18.0.1 Gw: <nil> Flags: [] Table: 254}

注釈を付けると消えますnetwork_mode: host。実行中のコンテナにはIPがあります172.18.0.33/16。エンターテイメントを強制するために既存のホームアシスタントコンテナを削除することは役に立ちません。

この場合、このメッセージはどういう意味ですか?

答え1

問題は、network_mode: host両方を使用してネットワークを(srv)として有効にしたことです。

そのnetworksセクションを削除すると問題が解決しました。

関連情報