Не удалось загрузить слушателей: не может создать сокет Unix/var/run/docker.sock: каталог

Ubuntu 18.04

Ядро 4.15.0-39-универсальный x86_64 GNU/Linux

То, что я пытаюсь заархивировать, должно заставить докера открывать сокет TCP на IP 192.168.2.11.

Таким образом, я редактирую конфигурации докера:

systemctl edit docker

Image of terminal Это - то, как мой/etc/systemd/system/docker.service.d/.#override.conf смотрит как.

[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://192.168.2.11:2375

Затем я работаю:

systemctl restart docker

Я получаю следующую ошибку:

-- Unit docker.service has finished shutting down.
Nov 15 09:45:35 docker systemd[1]: Starting Docker Application Container Engine...
-- Subject: Unit docker.service has begun start-up
-- Defined-By: systemd
-- Support: http://www.ubuntu.com/support
--
-- Unit docker.service has begun starting up.
Nov 15 09:45:35 docker dockerd[27753]: Failed to load listeners: can't create unix socket /var/run/docker.sock: is a directory
Nov 15 09:45:35 docker systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
Nov 15 09:45:35 docker systemd[1]: docker.service: Failed with result 'exit-code'.
Nov 15 09:45:35 docker systemd[1]: Failed to start Docker Application Container Engine.
-- Subject: Unit docker.service has failed
-- Defined-By: systemd
-- Support: http://www.ubuntu.com/support
--
-- Unit docker.service has failed.
--
-- The result is RESULT.
0
задан 15 November 2018 в 02:08

1 ответ

Я провожу около часа, пытаясь понять, почему, и это моя собственная ошибка - не читать сообщение об ошибке. в сообщении об ошибке четко говорится, что

не может создать сокет Unix /var/run/docker.sock: это каталог

, первое, что я делаю, это чтобы войти корень. (именно так я предпочитаю этого не делать, если вам не нравится работать таким образом. Просто добавьте sudo перед всеми командами)

sudo su

Я проверяю путь, используя следующую команду.

ls -la /var/run/docker.sock

Это показывает, что путь на самом деле является каталогом . Поэтому я удаляю каталог

rm -fr /var/run/docker.sock

, затем перезапускаю docker.service

systemctl edit docker

Docker запускается, и вывод docker статуса systemctl все в порядке.

Заключение: если вы получили это сообщение об ошибке и запустили ls на docker.sock, оно не выглядит так. затем удалите каталог и перезапустите докер.

ls -la /var/run/docker.sock
srw-rw---- 1 root docker 0 Nov 15 09:47 /var/run/docker.sock
0
ответ дан 27 October 2019 в 04:43

Другие вопросы по тегам:

Похожие вопросы: