Подтвердить что ты не робот

Начало Docker как Daemon на Ubuntu

Успешно использовал Docker в течение нескольких недель, но сегодня, когда я следил за набором инструкций, которые предлагали добавить следующие две строки в файл конфигурации докера в /etc/init/docker.conf:

limit memlock unlimited unlimited
limit nofile 262144

Затем он предложил перезапустить Docker с помощью sudo /etc/init.d/docker restart. Когда я это сделал под Ubuntu 14.04, он сообщил, что:

  • Docker управляется с помощью выскочки, попробуйте перезапустить перезагрузку службы

Я попробовал sudo service docker restart, о котором сообщалось:

stop: Неизвестное задание: docker

start: Неизвестное задание: docker

Теперь я застрял с демоном докеров, который не работает! Я попытался перезагрузить, но он все еще не работает, и когда вы запускаете что-то простое, как sudo docker version, я получаю:

Client version: 1.2.0
Client API version: 1.14
Go version (client): go1.3.1
Git commit (client): fa7b24f
OS/Arch (client): linux/amd64
2014/10/01 09:57:45 Get http:///var/run/docker.sock/v1.14/version: dial unix /var/run/docker.sock: no such file or directory

Чтобы устранить неполадки, я попытался запустить демон docker в командной строке с помощью:

sudo docker -d

И в другом окне терминала я теперь могу нормально запускать Docker. Это здорово, но КАК я снова его запускаю? Также я замечаю, что у меня есть два файла конфигурации докеров:

/etc/init/docker.conf
/etc/init/docker.io.conf

Они выглядят как DUP. Являются ли они излишними? На какой я должен смотреть? Мне нужны оба?

Я также заметил, что эта двуличность появляется при запуске sudo service --status-all |grep docker Я получаю как docker, так и docker.io как перечисленные службы. Выращенный.

4b9b3361

Ответ 1

Существует несколько популярных репозиториев, предлагающих пакеты докеров для Ubuntu. Пакет docker.io (скорее всего) из репозитория Ubuntu. Другой популярный http://get.docker.io/ubuntu, который предлагает пакет lxc-docker (я запускаю последний, потому что он быстрее передает обновления). Убедитесь, что установлен только один пакет. Не совсем уверен, что удаление пакетов очищается должным образом. Если sudo service docker restart все еще не работает, возможно, придется вручную очистить его в/etc/.

Ответ 2

У меня была такая же проблема в 14.04 с docker 1.9.1.

Команда службы upstart работала, когда я использовал sudo, хотя я был root:

$ whoami
root
$ service docker status
status: Unbekannter Auftrag: docker

$ sudo service docker status
docker start/running, process 7394

Кажется, что он зависит от переменных среды.

service docker status работает при запуске root с помощью su -, но не только при использовании su:

$ su
Password:
$ service docker status
status: unknown job: docker
$ exit
$ su -
Password:
$ service docker status
docker start/running, process 2342

Ответ 3

Эта проблема действительно стоила мне нескольких часов.

Моя система Ubuntu 14.04, я установил docker на sudo apt-get install docker и набрал некоторые другие команды, которые вызвали проблему.

  • "google" неизвестная работа: docker.io ", ответы не вступили в силу.

  • Я искал причины "неизвестной работы" в /etc/init.d/, не нашел правильного ответа.

  • Я искал способ отладки script в /etc/init.d/, не нашел правильного ответа.

  • Затем я сделал чистый:

    • sudo apt-get remove docker.io
    • rm каждый подозрительный файл find / -name "*docker*", например /etc/init/docker.io.conf, /etc/init.d/docker.io.
  • Следуйте за последним официальным документом: https://docs.docker.com/installation/, существует много устаревшей документации, которая может вводить в заблуждение.

Наконец, он устранил проблему.

Примечание. Если вы находитесь в Китае, из-за GFW вам может потребоваться установить https_proxy для установки докеров из https://get.docker.com/.

Ответ 4

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

Вот шаги для этого:

Добавьте группу докеров, если она еще не существует:

sudo groupadd docker

Добавьте подключенного пользователя ${USER} в группу докеров. Измените имя пользователя в соответствии с вашим предпочтительным пользователем:

sudo gpasswd -a ${USER} docker

Перезапустите демон Docker:

sudo service docker restart

Если вы на Ubuntu 14.04-15.10 * используйте вместо docker.io:

sudo service docker.io restart

(Если вы используете Ubuntu 16.04, сервис называется "докер" просто)

Либо выполните док-станцию ​​ newgrp, либо выполните вход/выход, чтобы активировать изменения в группах.

Ответ 5

У меня была такая же проблема на ubuntu 14.04 Вот решение

sudo service docker start

или вы можете просмотреть изображения

docker images

Ответ 6

Если появляется ошибка, что демон не запущен, и если он запущен с большим количеством выходных данных, например

sudo docker daemon -D

а выход - тайм-аут, это может быть исправлено в Ubuntu со следующим выполнением:

$ ps axf | grep docker | grep -v grep | awk '{print "kill -9 " $1}' | sudo sh

(Источник: https://github.com/moby/moby/issues/22507#issuecomment-219601289)

Ответ 7

У меня была такая же проблема, и она была вызвана линией для небезопасного реестра: /И т.д./по умолчанию/Докер