CentOS7安装docker 启动不了解决篇 "Cannot connect to the Docker daemon at unix:///var/run/docker.sock. ..."问题

本文记录了使用yum install docker安装Docker后启动失败的问题。博主尝试关闭防火墙、关闭selinux、重装系统等常见方法均未解决。最后给出两种成功安装并启动的方法,一是通过修改yum源安装docker - engine,二是使用curl命令安装。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[root@test ~]# yum update

[root@test ~]# yum install docker

 

[root@test ~]# service docker start

Redirecting to /bin/systemctl start  docker.service

Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.

[root@test ~]# systemctl status docker.service

● docker.service - Docker Application Container Engine

   Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)

   Active: inactive (dead) (Result: exit-code) since 四 2016-03-10 13:01:21 CST; 7s ago

     Docs: http://docs.docker.com

  Process: 29939 ExecStart=/usr/bin/docker daemon $OPTIONS $DOCKER_STORAGE_OPTIONS $DOCKER_NETWORK_OPTIONS $ADD_REGISTRY $BLOCK_REGISTRY $INSECURE_REGISTRY (code=exited, status=2)

 Main PID: 29939 (code=exited, status=2)

   CGroup: /system.slice/docker.service

           └─29970 mkfs.ext4 -E nodiscard,lazy_itable_init=0,lazy_journal_ini...

 

3月 10 13:01:20 test.test.com systemd[1]: Failed to start Docker Applic....

3月 10 13:01:20 test.test.com systemd[1]: Unit docker.service entered f....

3月 10 13:01:20 test.test.com systemd[1]: docker.service failed.

3月 10 13:01:21 test.test.com systemd[1]: docker.service holdoff time o....

Hint: Some lines were ellipsized, use -l to show in full.

[root@test ~]# 

 

使用yum install docker安装完后启动不了

[root@apptest ~]# service docker start

Redirecting to /bin/systemctl start  docker.service

一直停留在以上步骤

可以使用以下命令来安装,即可成功。

一个问题让我折腾了两天,试过关闭防火墙,关闭selinux,重装系统,等等网上能查到的方法都解决不了。

如果大家解决了,回复感谢下我吧。

 

[root@apptest ~]# yum remove docker

[root@apptest ~]# yum remove docker-selinux

 

[root@test yum.repos.d]# vi  /etc/yum.repos.d/docker.repo

 

[dockerrepo]

name=Docker Repository

baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/

enabled=1

gpgcheck=1

gpgkey=https://yum.dockerproject.org/gpg

 

[root@test yum.repos.d]# yum install docker-engine

 

已安装:

  docker-engine.x86_64 0:1.10.2-1.el7.centos                                    

 

作为依赖被安装:

  docker-engine-selinux.noarch 0:1.10.2-1.el7.centos   

 

[root@apptest ~]# service docker start

Redirecting to /bin/systemctl start  docker.service

[root@apptest ~]# docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

 

[root@test yum.repos.d]# docker version

Client:

 Version:      1.10.2

 API version:  1.22

 Go version:   go1.5.3

 Git commit:   c3959b1

 Built:        Mon Feb 22 16:16:33 2016

 OS/Arch:      linux/amd64

 

Server:

 Version:      1.10.2

 API version:  1.22

 Go version:   go1.5.3

 Git commit:   c3959b1

 Built:        Mon Feb 22 16:16:33 2016

 OS/Arch:      linux/amd64

[root@test yum.repos.d]# 

 

或者使用以下方法

 

[root@apptest ~]# curl -fsSL https://get.docker.com/ | sh

+ sh -c 'sleep 3; yum -y -q install docker-engine'

警告:/var/cache/yum/x86_64/7/docker-main-repo/packages/docker-engine-selinux-1.10.2-1.el7.centos.noarch.rpm: 头V4 RSA/SHA512 Signature, 密钥 ID 2c52609d: NOKEY

docker-engine-selinux-1.10.2-1.el7.centos.noarch.rpm 的公钥尚未安装

导入 GPG key 0x2C52609D:

 用户ID     : "Docker Release Tool (releasedocker) <docker@docker.com>"

 指纹       : 5811 8e89 f3a9 1289 7c07 0adb f762 2157 2c52 609d

 来自       : https://yum.dockerproject.org/gpg

setsebool:  SELinux is disabled.

+ sh -c 'docker version'

Client:

 Version:      1.10.2

 API version:  1.22

 Go version:   go1.5.3

 Git commit:   c3959b1

 Built:        Mon Feb 22 16:16:33 2016

 OS/Arch:      linux/amd64

Cannot connect to the Docker daemon. Is the docker daemon running on this host?

 

If you would like to use Docker as a non-root user, you should now consider

adding your user to the "docker" group with something like:

 

  sudo usermod -aG docker your-user

 

Remember that you will have to log out and back in for this to take effect!

 

[root@apptest ~]# 

 

[root@apptest ~]# service docker start

Redirecting to /bin/systemctl start  docker.service

[root@apptest ~]# docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

[root@apptest ~]# 

### 解决 CentOS 7Docker 守护程序连接失败的方法 当在 CentOS 7 中遇到 `Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?` 的错误时,这通常意味着客户端无法与 Docker 守护进程建立通信。可能的原因包括但不限于 Docker 服务未正确启动、权限设置不正确或是存在多个不同版本的 Docker 实例冲突。 对于因 snap 安装 Docker 导致的问题[^1],建议卸载通过 snap 安装Docker 版本并按照官方推荐的方式重新安装: ```bash sudo snap remove docker ``` 接着依照标准流程移除旧版 Docker 组件,并采用 yum 或 dnf 来获取最新稳定版 Docker CE/EE: ```bash sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine ``` 配置仓库后安装 Docker Engine - Community (CE): ```bash sudo yum install docker-ce docker-ce-cli containerd.io ``` 完成上述步骤之后,确保 Docker 能够随系统开机自动加载以及当前立即生效: ```bash sudo systemctl enable docker.service sudo systemctl start docker ``` 如果仍然遭遇同样的错误消息,在确认 Docker 正常运作的前提下(即 `systemctl status docker` 显示 active),可进一步排查 socket 文件夹权限问题或尝试停止再重启 Docker Socket 和 Service : ```bash sudo chown root:docker /var/run/docker.sock sudo chmod 660 /var/run/docker.sock sudo systemctl stop docker.socket sudo systemctl stop docker sudo systemctl restart docker ``` 以上措施有助于恢复 Docker 命令的功能正常使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值