昨晚,我的docker守护进程已更新至版本18.09.0-ce-tp0,内部版本4bb0619,从那时起它无法启动。我以前运行docker时没有任何问题。 操作系统:CentOS Linux版本7.5.1804(核心) 错误:
Aug 23 20:14:56 my-server-name polkitd[388]: Registered Authentication Agent for unix-process:6198:531754 (system bus name :1.45 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object path /org/freedesktop/Po
Aug 23 20:14:56 my-server-name polkitd[388]: Unregistered Authentication Agent for unix-process:6198:531754 (system bus name :1.45, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UT
Aug 23 20:15:02 my-server-name polkitd[388]: Registered Authentication Agent for unix-process:6210:532352 (system bus name :1.46 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object path /org/freedesktop/Po
Aug 23 20:15:09 my-server-name containerd-offline-installer[6120]: failed to dial "/run/containerd/containerd.sock": context deadline exceeded
Aug 23 20:15:09 my-server-name systemd[1]: docker.service: control process exited, code=exited status=1
Aug 23 20:15:09 my-server-name systemd[1]: Failed to start Docker Application Container Engine.
-- Subject: Unit docker.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker.service has failed.
--
-- The result is failed.
Aug 23 20:15:09 my-server-name systemd[1]: Unit docker.service entered failed state.
Aug 23 20:15:09 my-server-name systemd[1]: docker.service failed.
Aug 23 20:15:09 my-server-name polkitd[388]: Unregistered Authentication Agent for unix-process:6210:532352 (system bus name :1.46, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UT
Aug 23 20:15:10 my-server-name systemd[1]: docker.service holdoff time over, scheduling restart.
Aug 23 20:15:10 my-server-name systemd[1]: Starting Docker Application Container Engine...
-- Subject: Unit docker.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker.service has begun starting up.
为了清楚起见,我从systemctl start docker(或docker.service)开始,例如docker ps返回无法通过unix:///var/run/docker.sock连接到Docker守护程序。 docker守护程序正在运行吗?
有任何线索吗?
答案 0 :(得分:3)
通过将docker从版本 18.06.1-ce更新,构建e68fc7a 到版本 18.09.0〜ce〜0.4.tp4-0〜ubuntu ,我遇到了同样的问题。 我的解决方法是:
1)删除 docker-ce :
sudo apt-get remove docker-ce
2)删除依赖包:
sudo apt-get autoremove
3)检查是否删除了docker(应参阅找不到docker命令):
docker -v
4)安装较低版本的docker:
sudo apt-get install docker-ce=18.06.1~ce~3-0~ubuntu
5)检查docker服务是否正在运行:
sudo service docker status
对我有用。希望以上解决方案能对您有所帮助。
答案 1 :(得分:1)
我遇到了同样的问题。我发现的唯一解决方法是杀死容器服务并重新启动dockerd。
编辑: 我解决了我的问题,它似乎来自docker-ce-test和启用了docker-ce-edge
root@dkr:~# yum list docker-ce --showduplicates | sort -r
* updates: ftp.pasteur.fr
Loading mirror speeds from cached hostfile
Loaded plugins: fastestmirror
Installed Packages
* extras: ftp.pasteur.fr
* epel: ftp.plusline.net
docker-ce.x86_64 2:18.09.0.ce-0.4.tp4.el7 docker-ce-test
docker-ce.x86_64 2:18.09.0.ce-0.4.tp4.el7 @docker-ce-test
docker-ce.x86_64 2:18.09.0.ce-0.3.tp3.el7 docker-ce-test
docker-ce.x86_64 2:18.09.0.ce-0.0.tp0.el7 docker-ce-test
docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-test
docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-edge
docker-ce.x86_64 18.06.1.ce-2.2.rc2.el7 docker-ce-test
docker-ce.x86_64 18.06.1.ce-2.1.rc1.el7 docker-ce-test
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-test
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-edge
docker-ce.x86_64 18.06.0.ce-2.3.rc3.el7 docker-ce-test
...
我删除了所有不稳定版本:
sudo yum-config-manager --disable docker-ce-edge
sudo yum-config-manager --disable docker-ce-test
我删除并重新安装了docker-ce(我不确定是否需要):
yum remove docker-ce docker-ce-cli ; yum install docker-ce docker-ce-cli
现在我只安装了稳定版本,并且一切都像以前一样正常:
root@dkr:~# yum list docker-ce --showduplicates | sort -r
* updates: ftp.pasteur.fr
Loading mirror speeds from cached hostfile
Loaded plugins: fastestmirror
Installed Packages
* extras: ftp.pasteur.fr
* epel: mirror.speedpartner.de
docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.el7 @docker-ce-stable
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.03.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 18.03.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.12.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.12.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.09.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.09.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.2.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.2.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
答案 2 :(得分:0)
Fedora 28的解决方案以及我为解决此问题而采取的步骤。
正如@Alain回答的那样,docker-ce-test和docker-ce-edge enabled是此问题的根本原因。由于显示了许多安装(如果已启用),因此在安装阶段可能会意外安装错误的版本。
首先,我们将其从配置管理器中删除
sudo dnf config-manager --set-disabled docker-ce-edge
sudo dnf config-manager --set-disabled docker-ce-test
然后删除您已有的docker安装
sudo dnf remove docker-ce docker-ce-cli
要么
sudo dnf remove docker-ce docker-ce-<version>
从稳定的版本中安装所需的版本
dnf list docker-ce --showduplicates | sort -r
Last metadata expiration check: 1:20:05 ago on Thu 29 Nov 2018 04:55:30 PM.
Installed Packages
docker-ce.x86_64 3:18.09.0-3.fc28 docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.fc28 docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.fc28 @docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.fc28 @docker-ce-stable
docker-ce.x86_64 18.06.0.ce-3.fc28 docker-ce-stable
docker-ce.x86_64 18.03.1.ce-3.fc28 docker-ce-stable
我们不会像以前那样安装docker-ce-cli
,因为如果您尝试在其上安装一个版本,它将在交易检查期间发生冲突。
例如
sudo dnf install docker-ce-18.06.1.ce
现在一切正常!