Intenté instalar docker-ce
siguiendo las instrucciones proporcionadas en la documentación oficial de Docker.usando el repositorio. La instalación se trabó en este punto:
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
Después de esperar mucho tiempo, interrumpí el proceso con sudo killall apt-get
. Ahora, cada vez que intento usar un comando que use apt-get, dirá lo siguiente:
E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.
Cuando ejecuto ese comando, simplemente comienza a ejecutar el comando original que nunca finaliza. En este punto, solo quiero resolver esto sin siquiera poder ejecutar Docker (solo quería probarlo).
Ya probé la mayoría de las respuestas para esto.pregunta relacionada. Ni siquiera puedo usarlo sudo apt-get remove docker-ce
porque tengo el mismo problema.
Alguna información sobre la instalación de Docker:
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
Estoy ejecutando Ubuntu 16.04
Respuesta1
Parece que docker-ce
está pendiente del inicio del servicio:
\_ 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
El proceso de eliminación systemctl start docker.service
debería ser suficiente:
sudo kill -9 $(ps aux | grep "systemctl start docker.service" | head -n 1 | awk '{print $2}')
comprobar trabajos systemd:
sudo systemctl list-jobs
JOB UNIT TYPE STATE
2831057 docker.service start running
Si se está ejecutando algún trabajo de Docker, elimínelo:
sudo systemctl kill docker.service
Asegúrese de verificar que no tiene ninguna anulación definida:
/etc/systemd/system/docker.service.d/
por ejemplo, comando anulado para (usado en 17.03
la versión):
ExecStart=/usr/bin/docker daemon
en lugar de /usr/bin/dockerd
. Antes de continuar, asegúrese de finalizar cualquier proceso acoplable restante:
ps aux | grep "[d]ockerd"
detener el proceso restante del demonio Docker (si hay alguno):
sudo kill -9 $(ps aux | grep "[d]ockerd" | head -n 1 | awk '{print $2}')
Si está actualizando desde una versión anterior de Docker ( docker.io
, docker-engine
etc.) o simplemente está cambiando el almacenamiento de archivos subyacente, es más seguro eliminar todos los datos de Docker antes de instalar la nueva versión.
sudo rm -rf /var/lib/docker
sudo apt install docker-ce
Para arreglar la instalación rota, simplemente ejecútela sudo dpkg --configure -a
y docker.service
debería comenzar.
Respuesta2
Me enfrenté al mismo problema, aquí están todos los pasos que seguí para eliminar completamente la ventana acoplable. Espero que te ayude
Detener los servicios de Docker
service docker stop
Desmontaje de cerraduras después de una instalación interrumpida
rm /var/lib/dpkg/lock
Restaurando
dpkg --configure -a
Si dpkg se atasca, desde una terminal diferente detenga el servicio Docker
service docker stop
Eliminación de todos los paquetes de Docker y limpieza
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
Eliminar todos los archivos relacionados con 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
Paquetes de actualización opcionales.
apt-get update / upgrade / dist-upgrade
Reiniciando
reboot
Respuesta3
Tuve este mismo problema ayer. Reinicié el servidor:
sudo reboot
y paquetes reconfigurados:
sudo dpkg --configure -a
Y el problema se resolvió.
Respuesta4
Tuve exactamente el mismo problema y lo resolví de la siguiente manera (el origen de mi problema fue actualizar a Docker desde la versión anterior a la más reciente):
1.- Detener el servicio Docker (que está intentando iniciar con un comando de demonio incorrecto): systemctl stop docker.service
2.- Modificar la sintaxis del comando docker daemon en (que cambió de la versión antigua a la última): /etc/systemd/system/docker.service.d/50-docker_dns.conf desde: ExecStart=/usr/bin/docker daemon.. a: ExecStart=/usr/bin/dockerd...
3.- Reinicia el demonio docker para que se cargue la nueva configuración: systemctl start docker.service