Docker network issue: Unable to resolve external hosts from containers

    • OMV 4.x
    • Docker network issue: Unable to resolve external hosts from containers

      Firstly many thanks for your your support, it is invaluable in all cases.

      My issue follows the issue that have been described in a previous post Docker plugin - After the last update it does not start where users experienced issue after a Docker update which broke the OMV-Extras Docker plugin. That issue has been resolved successfully for me although in my own attempts to fix it I purged all containers and the plugin itself in order to try and fix the issue.

      My configs (and data) however are stored in a .config folder on a separate drive ( config on OMV drive / Docker Base Path in a shared folder in Raid 10 config / XFS ). This configuration has been working fine for about a month since I performed a clean install of OMV4 on the system drive while keeping the Raid array untouched.

      When firing up the same images and setting the config path to the original config paths I hoped to retain all the configuration information and stored data.

      My first issue was an issue with user permissions that for writing to the containers which solved with removing the noexec option from fstab as described here Some docker containers don't like it when fstab is noexec which is weird because it WAS working before the breaking update.

      Once noexec was removed the containers can back up fine and read the original configurations fine but were unable to resolve external addresses!

      Which brings me here...

      I have checked the following:

      The containers resolv.conf has valid dns - The orginally had the same IPs as my router (isp) so have overridden them by adding a /etc/docker/daemon.json file containing Google DNS ips which I confirm within the containers /etc/resolv.conf

      Source Code

      1. {
      2. "dns": ["", ""]
      3. }

      I have rebuilt the containers and tried using a blank config to see if there was a remnant in the configs of an old network setting but didn't help.

      My networks are as follow:

      Source Code

      2. bd7c9f9e3e7c bridge bridge local
      3. f9b140ca4f93 host host local
      4. 25f63d6e16fe none null local
      Both HOST and BRIDGE networks experience the same issue with name resolution.

      Now the weird bit... My Plex container is on the HOST network and when being brought up from the original config connects to and I can access the server from remotely UNTIL press "Apply" on the port specification in which case it drop the connection. This may be that is seeing in rather than the container broadcasting though.

      I've tried to fix it, and failed and so my hopes lie in the community.

      Many thanks in advance.
    • Additonal info:

      Network Interfaces

      Source Code

      1. ip a
      2. 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
      3. link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      4. inet scope host lo
      5. valid_lft forever preferred_lft forever
      6. inet6 ::1/128 scope host
      7. valid_lft forever preferred_lft forever
      8. 2: enp7s1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
      9. link/ether 00:1c:c4:5f:5a:31 brd ff:ff:ff:ff:ff:ff
      10. inet brd scope global enp7s1
      11. valid_lft forever preferred_lft forever
      12. 3: enp3s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
      13. link/ether 00:18:71:ea:53:1c brd ff:ff:ff:ff:ff:ff
      14. 4: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
      15. link/ether 02:42:5d:7b:70:a4 brd ff:ff:ff:ff:ff:ff
      16. inet brd scope global docker0
      17. valid_lft forever preferred_lft forever
      18. 10: veth47bf809@if9: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default
      19. link/ether 72:a3:f1:09:c3:71 brd ff:ff:ff:ff:ff:ff link-netnsid 0
      Display All

      Docker info

      Source Code

      1. dpkg -l | grep docker
      2. ii docker-ce 5:18.09.0~3-0~debian-stretch amd64 Docker: the open-source application container engine
      3. ii docker-ce-cli 5:18.09.0~3-0~debian-stretch amd64 Docker CLI: the open-source application container engine
      4. ii openmediavault-docker-gui 4.1 all OpenMediaVault plugin for Docker