Moby: Ответ об ошибке от демона: не удалось создать конечную точку (...) на сетевом мосту: не удалось добавить интерфейс пары хоста (veth1d85371) <=> песочницы (vethbc264f6): операция не поддерживается.

Созданный на 16 окт. 2016  ·  22Комментарии  ·  Источник: moby/moby

У меня есть недавно установленный докер, но когда я не могу запускать контейнеры

docker run --rm hello-world                                                                                                                          
docker: Error response from daemon: failed to create endpoint jolly_kare on network bridge: failed to add the host (veth1d85371) <=> sandbox (vethbc264f6) pair interfaces: operation not supported.

Информация о докере:

Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 1
Server Version: 1.12.2
Storage Driver: devicemapper
 Pool Name: docker-8:1-799432-pool
 Pool Blocksize: 65.54 kB
 Base Device Size: 10.74 GB
 Backing Filesystem: xfs
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 14.09 MB
 Data Space Total: 107.4 GB
 Data Space Available: 21.34 GB
 Metadata Space Used: 585.7 kB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.147 GB
 Thin Pool Minimum Free Space: 10.74 GB
 Udev Sync Supported: true
 Deferred Removal Enabled: false
 Deferred Deletion Enabled: false
 Deferred Deleted Device Count: 0
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 WARNING: Usage of loopback devices is strongly discouraged for production use. Use `--storage-opt dm.thinpooldev` to specify a custom block storage device.
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.77 (2012-10-15)
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: host bridge overlay null
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Security Options:
Kernel Version: 3.10.23-xxxx-std-ipv6-64-vps
Operating System: Ubuntu 14.04.5 LTS
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 3.854 GiB
Name: vps102867
ID: RTPT:KG2U:SH6J:5KS4:5S27:A57A:E6PV:425A:7KEF:UJKR:5WOG:FQBV
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
WARNING: No kernel memory limit support
Insecure Registries:
 127.0.0.0/8

Я уже пытался удалить /var/lib/docker/network/files/local-kv.db как упоминалось в аналогичных проблемах, безуспешно

arenetworking

Самый полезный комментарий

Я не вижу здесь никаких проблем. Я только что оставил комментарий для тех, кто использует Arch Linux, чтобы они знали, что после обновления ядра требуется перезагрузка.

Спасибо за разъяснение @thaJeztah.

Все 22 Комментарий

Похоже, вы используете нестандартное ядро ​​для Ubuntu 14.04. Ubuntu 14.04 поставляется с ядром 3.13. А можно со стандартным ядром попробовать? Возможно, в вашем ядре отсутствуют модули, необходимые для правильной работы докера; вы можете попробовать запустить этот сценарий, чтобы увидеть, чего не хватает; https://github.com/docker/docker/blob/master/contrib/check-config.sh

Упс ... вывод скрипта

Generally Necessary:
- cgroup hierarchy: properly mounted [/sys/fs/cgroup]
- CONFIG_NAMESPACES: enabled
- CONFIG_NET_NS: enabled
- CONFIG_PID_NS: enabled
- CONFIG_IPC_NS: enabled
- CONFIG_UTS_NS: enabled
- CONFIG_DEVPTS_MULTIPLE_INSTANCES: enabled
- CONFIG_CGROUPS: enabled
- CONFIG_CGROUP_CPUACCT: enabled
- CONFIG_CGROUP_DEVICE: enabled
- CONFIG_CGROUP_FREEZER: enabled
- CONFIG_CGROUP_SCHED: enabled
- CONFIG_CPUSETS: enabled
- CONFIG_MEMCG: enabled
- CONFIG_KEYS: enabled
- CONFIG_VETH: missing
- CONFIG_BRIDGE: enabled
- CONFIG_BRIDGE_NETFILTER: enabled
- CONFIG_NF_NAT_IPV4: enabled
- CONFIG_IP_NF_FILTER: enabled
- CONFIG_IP_NF_TARGET_MASQUERADE: enabled
- CONFIG_NETFILTER_XT_MATCH_ADDRTYPE: enabled
- CONFIG_NETFILTER_XT_MATCH_CONNTRACK: enabled
- CONFIG_NETFILTER_XT_MATCH_IPVS: missing
- CONFIG_IP_NF_NAT: missing
- CONFIG_NF_NAT: enabled
- CONFIG_NF_NAT_NEEDED: enabled
- CONFIG_POSIX_MQUEUE: missing

Optional Features:
- CONFIG_USER_NS: missing
- CONFIG_SECCOMP: enabled
- CONFIG_CGROUP_PIDS: missing
- CONFIG_MEMCG_SWAP: enabled
- CONFIG_MEMCG_SWAP_ENABLED: enabled
- CONFIG_MEMCG_KMEM: missing
- CONFIG_RESOURCE_COUNTERS: enabled
- CONFIG_BLK_CGROUP: enabled
- CONFIG_BLK_DEV_THROTTLING: enabled
- CONFIG_IOSCHED_CFQ: enabled
- CONFIG_CFQ_GROUP_IOSCHED: enabled
- CONFIG_CGROUP_PERF: missing
- CONFIG_CGROUP_HUGETLB: missing
- CONFIG_NET_CLS_CGROUP: enabled
- CONFIG_NETPRIO_CGROUP: missing
- CONFIG_CFS_BANDWIDTH: enabled
- CONFIG_FAIR_GROUP_SCHED: enabled
- CONFIG_RT_GROUP_SCHED: enabled
- CONFIG_IP_VS: missing
- CONFIG_IP_VS_NFCT: missing
- CONFIG_IP_VS_RR: missing
- CONFIG_EXT3_FS: enabled
- CONFIG_EXT3_FS_XATTR: enabled
- CONFIG_EXT3_FS_POSIX_ACL: enabled
- CONFIG_EXT3_FS_SECURITY: enabled
- CONFIG_EXT4_FS: enabled
- CONFIG_EXT4_FS_POSIX_ACL: enabled
- CONFIG_EXT4_FS_SECURITY: enabled
- Network Drivers:
  - "overlay":
    - CONFIG_VXLAN: missing
      Optional (for encrypted networks):
      - CONFIG_CRYPTO: enabled
      - CONFIG_CRYPTO_AEAD: enabled
      - CONFIG_CRYPTO_GCM: missing
      - CONFIG_CRYPTO_SEQIV: missing
      - CONFIG_CRYPTO_GHASH: missing
      - CONFIG_XFRM: enabled
      - CONFIG_XFRM_USER: enabled
      - CONFIG_XFRM_ALGO: enabled
      - CONFIG_INET_ESP: enabled
      - CONFIG_INET_XFRM_MODE_TRANSPORT: enabled
  - "ipvlan":
    - CONFIG_IPVLAN: missing
  - "macvlan":
    - CONFIG_MACVLAN: missing
    - CONFIG_DUMMY: enabled
- Storage Drivers:
  - "aufs":
    - CONFIG_AUFS_FS: missing
  - "btrfs":
    - CONFIG_BTRFS_FS: enabled
    - CONFIG_BTRFS_FS_POSIX_ACL: enabled
  - "devicemapper":
    - CONFIG_BLK_DEV_DM: enabled
    - CONFIG_DM_THIN_PROVISIONING: enabled
  - "overlay":
    - CONFIG_OVERLAY_FS: missing
  - "zfs":
    - /dev/zfs: missing
    - zfs command: missing
    - zpool command: missing

Limits:
- /proc/sys/kernel/keys/root_maxkeys: 1000000

Интересно, насколько безопасным может быть изменение ядра на не выделенном vps ovh

Похоже, чего-то не хватает, возможно, лучше обратиться в службу поддержки ovh?

Исходя из вышеизложенного, я не думаю, что это ошибка в докере, поэтому я закрою эту проблему, но не стесняйтесь продолжить обсуждение здесь.

В моем случае ошибка появляется каждый раз, когда я обновляю ядро ​​Linux. Он исчезает, когда я перезагружаю компьютер.

Я использую Arch Linux.

Обновлять:

Альтернативой является понижение версии ядра, если перезапуск в данный момент невозможен.

sudo pacman -U /var/cache/pacman/pkg/linux-$(uname -r | sed 's/-ARCH//')-x86_64.pkg.tar.xz

Кредиты для @Nowaker . См. Комментарий ниже

Arch linux - это непрерывный выпуск, который поставляется с «передовыми» версиями пакетов. Из-за этого известно, что Arch периодически ломает докер; по этой причине мы не отправляем пакеты для Arch. Возможно, лучше всего сообщить об этом с помощью Arch linux, который поддерживает свои пакеты

Я не вижу здесь никаких проблем. Я только что оставил комментарий для тех, кто использует Arch Linux, чтобы они знали, что после обновления ядра требуется перезагрузка.

Спасибо за разъяснение @thaJeztah.

Спасибо @whoan за ответ!

@whoan Для Arch Linux после обновления ядра все старые модули ядра будут автоматически удалены (заменены модулями ядра новой версии). Поэтому, если вы не перезагружали компьютер, у вас будет старое ядро ​​без соответствующих модулей ядра. Большинство команд докеров загружают модули ядра (если они еще не загружены), но ваше старое ядро ​​больше не может находить свои модули. Вот почему ошибка появляется каждый раз при обновлении ядра Linux и исчезает после перезагрузки компьютера.

Каталог модулей ядра находится в / lib / modules /. В следующий раз перед обновлением ядра сделайте резервную копию старого каталога модулей ядра. После обновления восстановите старый каталог модулей ядра, тогда вы не увидите эту ошибку, даже если не перезагрузите компьютер.

У меня такая же ошибка, но после перезагрузки не работала. Итак, я удаляю все изображения и контейнеры с помощью команд docker image rm и docker rm . Тогда докер работает нормально.

У меня возникла эта проблема, потому что я запускал собственное ядро ​​без опции устройства виртуальной пары Ethernet . Так что, если у вас есть собственное ядро, включите эту опцию перед запуском make . Вы найдете его под:

Device Drivers -> Network device support -> Network core driver support

Помещаю это здесь, потому что это, кажется, первый результат в Google для этой ошибки. Надеюсь, это поможет!

@whoan Альтернативой является понижение версии ядра, если перезапуск в данный момент невозможен. Было бы здорово, если бы вы могли отредактировать свой комментарий, чтобы все знания были в одном месте. Спасибо :-)

sudo pacman -U /var/cache/pacman/pkg/linux-$(uname -r | sed 's/-ARCH//)'-x86_64.pkg.tar.xz

Спасибо @Nowaker за ваш вклад. Я добавил это к своему предыдущему комментарию, как было предложено.

@Nowaker, спасибо! Незначительное исправление опечатки для будущих поисковиков:
sudo pacman -U /var/cache/pacman/pkg/linux-$(uname -r | sed 's/-ARCH//')-x86_64.pkg.tar.xz
(обратите внимание на поменяемые местами заключительные одинарные кавычки и круглые скобки)

Спасибо @morancj. Я исправил это в своем предыдущем комментарии.

Спасибо, это было очень полезно!

@tomas , не могли бы вы помочь мне разобраться в этой проблеме? Я использовал собственное ядро.
Вот ссылка, докер не запускается в armv7l

Завтра я попробую ваш метод, о котором вы напомните. БОЛЬШОЕ СПАСИБО .

@tomas , Спасибо за ответ выше, это решило мою проблему. Большое спасибо.

Вывод скрипта: https://github.com/docker/docker/blob/master/contrib/check-config.sh

Я вижу недостающие пакеты, что делать, чтобы исправить ошибку:
не удалось создать конечную точку flamboyant_tereshkova на сетевом мосту: добавление интерфейса vethfb90d78 в мост docker0 не удалось: не удалось найти мост docker0: route ip + net: такого сетевого интерфейса нет

предупреждение: /proc/config.gz не существует, ищем другие пути для конфигурации ядра ...
информация: чтение конфигурации ядра из /boot/config-4.8.0-59-generic ...

Обычно необходимо:

  • Иерархия cgroup: правильно смонтирована [/ sys / fs / cgroup]
  • apparmor: включен и инструменты установлены
  • CONFIG_NAMESPACES: включен
  • CONFIG_NET_NS: включен
  • CONFIG_PID_NS: включен
  • CONFIG_IPC_NS: включен
  • CONFIG_UTS_NS: включен
  • CONFIG_CGROUPS: включен
  • CONFIG_CGROUP_CPUACCT: включен
  • CONFIG_CGROUP_DEVICE: включен
  • CONFIG_CGROUP_FREEZER: включен
  • CONFIG_CGROUP_SCHED: включен
  • CONFIG_CPUSETS: включен
  • CONFIG_MEMCG: включен
  • CONFIG_KEYS: включен
  • CONFIG_VETH: включен (как модуль)
  • CONFIG_BRIDGE: включен (как модуль)
  • CONFIG_BRIDGE_NETFILTER: включен (как модуль)
  • CONFIG_NF_NAT_IPV4: включен (как модуль)
  • CONFIG_IP_NF_FILTER: включен (как модуль)
  • CONFIG_IP_NF_TARGET_MASQUERADE: включен (как модуль)
  • CONFIG_NETFILTER_XT_MATCH_ADDRTYPE: включен (как модуль)
  • CONFIG_NETFILTER_XT_MATCH_CONNTRACK: включен (как модуль)
  • CONFIG_NETFILTER_XT_MATCH_IPVS: включен (как модуль)
  • CONFIG_IP_NF_NAT: включен (как модуль)
  • CONFIG_NF_NAT: включен (как модуль)
  • CONFIG_NF_NAT_NEEDED: включен
  • CONFIG_POSIX_MQUEUE: включен

Дополнительные особенности:

  • CONFIG_USER_NS: включен
  • CONFIG_SECCOMP: включен
  • CONFIG_CGROUP_PIDS: включен
  • CONFIG_MEMCG_SWAP: включен
  • CONFIG_MEMCG_SWAP_ENABLED: отсутствует
    (учет подкачки cgroup в настоящее время не включен, вы можете включить его, установив параметр загрузки "swapaccount = 1")
  • CONFIG_LEGACY_VSYSCALL_EMULATE: включен
  • CONFIG_BLK_CGROUP: включен
  • CONFIG_BLK_DEV_THROTTLING: включен
  • CONFIG_IOSCHED_CFQ: включен
  • CONFIG_CFQ_GROUP_IOSCHED: включен
  • CONFIG_CGROUP_PERF: включен
  • CONFIG_CGROUP_HUGETLB: включен
  • CONFIG_NET_CLS_CGROUP: включен (как модуль)
  • CONFIG_CGROUP_NET_PRIO: включен
  • CONFIG_CFS_BANDWIDTH: включен
  • CONFIG_FAIR_GROUP_SCHED: включен
  • CONFIG_RT_GROUP_SCHED: отсутствует
  • CONFIG_IP_NF_TARGET_REDIRECT: включен (как модуль)
  • CONFIG_IP_VS: включен (как модуль)
  • CONFIG_IP_VS_NFCT: включен
  • CONFIG_IP_VS_PROTO_TCP: включен
  • CONFIG_IP_VS_PROTO_UDP: включен
  • CONFIG_IP_VS_RR: включен (как модуль)
  • CONFIG_EXT4_FS: включен
  • CONFIG_EXT4_FS_POSIX_ACL: включен
  • CONFIG_EXT4_FS_SECURITY: включен
  • Сетевые драйверы:

    • "оверлей":

    • CONFIG_VXLAN: включен (как модуль)

      Необязательно (для зашифрованных сетей):



      • CONFIG_CRYPTO: включен


      • CONFIG_CRYPTO_AEAD: включен


      • CONFIG_CRYPTO_GCM: включен (как модуль)


      • CONFIG_CRYPTO_SEQIV: включен


      • CONFIG_CRYPTO_GHASH: включен (как модуль)


      • CONFIG_XFRM: включен


      • CONFIG_XFRM_USER: включен (как модуль)


      • CONFIG_XFRM_ALGO: включен (как модуль)


      • CONFIG_INET_ESP: включен (как модуль)


      • CONFIG_INET_XFRM_MODE_TRANSPORT: включен (как модуль)



    • "ipvlan":

    • CONFIG_IPVLAN: включен (как модуль)

    • "macvlan":

    • CONFIG_MACVLAN: включен (как модуль)

    • CONFIG_DUMMY: включен (как модуль)

    • «FTP, клиент tftp в контейнере»:

    • CONFIG_NF_NAT_FTP: включен (как модуль)

    • CONFIG_NF_CONNTRACK_FTP: включен (как модуль)

    • CONFIG_NF_NAT_TFTP: включен (как модуль)

    • CONFIG_NF_CONNTRACK_TFTP: включен (как модуль)

  • Драйверы хранилища:

    • "aufs":

    • CONFIG_AUFS_FS: включен (как модуль)

    • "btrfs":

    • CONFIG_BTRFS_FS: включен (как модуль)

    • CONFIG_BTRFS_FS_POSIX_ACL: включен

    • "devicemapper":

    • CONFIG_BLK_DEV_DM: включен

    • CONFIG_DM_THIN_PROVISIONING: включен (как модуль)

    • "оверлей":

    • CONFIG_OVERLAY_FS: включен (как модуль)

    • "zfs":

    • / dev / zfs: отсутствует

    • команда zfs: отсутствует

    • команда zpool: отсутствует

Пределы:

  • / proc / sys / ядро ​​/ ключи / root_maxkeys: 1000000

Кто знал? Решением было выключить его и снова включить.

Похоже, Linux скопировал этот трюк из Windows

Я должен добавить для других пользователей Arch, что перезагрузка в моем случае была связана с обновлением системы в тот же день. Похоже, докер не может установить соединение, если вы обновили арку без перезагрузки.

Такая же проблема с моим Raspberry PI.
Перезагрузка решила проблему.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги