Подпроцесс пост-установки docker-ce никогда не заканчивается

Я попытался установить docker-ce, следуя инструкциям, приведенным в официальной документации Docker , используя репозиторий . Установка застряла в этой точке:

Setting up docker-ce (17.09.0~ce-0~ubuntu) ...
insserv: warning: script 'K01postgresql-9.5' missing LSB tags and overrides
insserv: warning: script 'postgresql-9.5' missing LSB tags and overrides

После ожидания в течение очень долгого времени я прервал процесс с помощью sudo killall apt-get. Теперь, когда я пытаюсь использовать команду, которая использует apt-get, она говорит следующее:

E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.

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

Я уже попробовал большинство ответов на этот связанный вопрос . Я даже не могу использовать sudo apt-get remove docker-ce, потому что сталкиваюсь с той же проблемой.

Немного информации об установке докера:

docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor  preset: e
Drop-In: /etc/systemd/system/docker.service.d
       └─ubuntu.conf
Active: activating (start) since mié 2017-11-22 15:38:31 CST; 7min ago
 Docs: https://docs.docker.com
Main PID: 1431 (docker)
Tasks: 6
Memory: 18.4M
  CPU: 21ms
CGroup: /system.slice/docker.service
       └─1431 /usr/bin/docker -d -H fd://

docker-ce:
Installed: 17.09.0~ce-0~ubuntu
Candidate: 17.09.0~ce-0~ubuntu
Version table:
*** 17.09.0~ce-0~ubuntu 100
    100 /var/lib/dpkg/status

Я работаю в Ubuntu 16.04

7
задан 23 November 2017 в 00:57

5 ответов

Это появляется это docker-ce зависает на сервисе, запустите:

 \_ apt install docker-ce
     \_ /usr/bin/dpkg --status-fd 64 --configure --pending
         \_ /bin/sh /var/lib/dpkg/info/docker-ce.postinst configure
             \_ /bin/sh /usr/sbin/invoke-rc.d docker start
                 \_ systemctl start docker.service
                     \_ /bin/systemd-tty-ask-password-agent --watch

Уничтожение systemctl start docker.service процесс должен быть достаточно:

sudo kill -9 $(ps aux | grep "systemctl start docker.service" | head -n 1 | awk '{print $2}')

проверка systemd задания:

sudo systemctl list-jobs
    JOB UNIT           TYPE  STATE  
2831057 docker.service start running

если какое-либо задание докера работает, уничтожьте его:

sudo systemctl kill docker.service

Удостоверьтесь, что проверили, что у Вас нет переопределений определенными:

/etc/systemd/system/docker.service.d/

например, переопределение команды к (используемый в 17.03 выпуск):

ExecStart=/usr/bin/docker daemon

вместо /usr/bin/dockerd. Прежде, чем продолжиться убедиться уничтожить любой остающийся процесс докера:

ps aux | grep "[d]ockerd"

прекратите оставаться процессом демона Докера (если существует кто-либо):

sudo kill -9 $(ps aux | grep "[d]ockerd" | head -n 1 | awk '{print $2}')

Если Вы обновляете от предыдущей версии докера (docker.io, docker-engine и т.д.), или просто изменяющийся лежащий в основе хранилища файлов, более безопасно удалить все данные докера прежде, чем установить новую версию.

sudo rm -rf /var/lib/docker
sudo apt install docker-ce

Для фиксации поврежденной установки просто работайте sudo dpkg --configure -a и docker.service должен запуститься.

7
ответ дан 23 November 2017 в 00:57

У меня была такая же проблема вчера. Я выполнил перезагрузку сервера:

sudo reboot

и перенастроил пакеты:

sudo dpkg --configure -a

И проблема была решена.

1
ответ дан 23 November 2017 в 00:57

Похоже, у вас проблемы с пакетом postgresql-9.5, я попытаюсь установить docker-ce после того, как очистил этот пакет. Также доступна новая версия пакета docker-ce (17.12).

0
ответ дан 23 November 2017 в 00:57

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

Остановка служб докеров

service docker stop

Удаление блокировок после прерывистой установки

rm /var/lib/dpkg/lock

Восстановление

dpkg --configure -a

Если Застрял dpkg, из другого терминала остановите службу Docker

service docker stop 

Удаление всех пакетов Docker и очистка

apt-get remove docker docker-engine docker.io docker-ce
apt-get purge docker docker-engine docker.io docker-ce
apt-get autoremove
apt-get autoclean

Удалите все файлы, связанные с Docker

rm -rf /lib/systemd/system/docker.service
rm -rf /etc/docker
rm -rf /var/lib/docker
rm -rf /run/docker.sock
rm -rf /etc/systemd/system/docker.service.d

Необязательно, Обновление пакетов

apt-get update / upgrade / dist-upgrade

Перезагрузка

reboot
0
ответ дан 23 November 2017 в 00:57

Я имел точно ту же проблему и просто решил ее следующим образом (источник моей проблемы был обновлением докера от более старой версии до последнего):

1. - Останавливают услуги докера (который пытается запустить w неправильная команда демона): systemctl останавливают docker.service

2. - Изменяют синтаксис команды демона докера в (который изменился от старого до последней версии):/etc/systemd/system/docker.service.d/50-docker_dns.conf от: демон ExecStart =/usr/bin/docker... кому: ExecStart =/usr/bin/dockerd...

3. - Перезапускают демона докера так, чтобы новая конфигурация была загружена: systemctl запускают docker.service

0
ответ дан 23 November 2019 в 06:28

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

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