CentOS通过yum安装Docker
Posted 洗洗早睡啦 的博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS通过yum安装Docker相关的知识,希望对你有一定的参考价值。
安装前准备
CentOS版本
要安装Docker Engine,你需要以下CentOS版本中的一个维护版本:
- CentOS 7
- CentOS 8 (stream)
- CentOS 9 (stream)
centos-extras
仓库必须被启用。这个仓库默认是启用的,但如果你已经禁用了它,你需要重新启用它。
删除旧版本
旧版本的Docker以docker
或docker-engine
为名。在尝试安装新版本之前,请卸载任何此类旧版本,以及相关的依赖关系。
$ sudo yum remove docker \\
docker-client \\
docker-client-latest \\
docker-common \\
docker-latest \\
docker-latest-logrotate \\
docker-logrotate \\
docker-engine
当你卸载Docker时,存储在/var/lib/docker/
中的镜像、容器、数据卷和网络不会自动删除。
进行安装
在你第一次在新主机上安装Docker Engine之前,你需要设置Docker仓库。之后,你可以从存储库中安装和更新Docker。
设置存储库
安装yum-utils
软件包(提供yum-config-manager
工具),并设置资源库。
$ sudo yum install -y yum-utils
$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装Docker Engine
- 安装Docker Engine、containerd和Docker Compose:
$ sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
如果提示接受GPG密钥,验证指纹是否与060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35
相匹配,如果是,就接受它。
这条命令安装了Docker,但它并没有启动Docker。它还创建了一个docker
组,但是,默认情况下,它没有添加任何用户到该组。
- 启动Docker
$ sudo systemctl start docker
- 通过运行
hello-world
镜像,验证Docker的安装是否成功。
$ sudo docker run hello-world
这个命令会下载一个测试镜像并在一个容器中运行。当容器运行时,它会打印出一条确认信息并退出。
现在你已经成功安装并启动了Docker Engine。
CentOs安装docker
参照官方文档安装dockerCE版本
1.安装需要的依赖包,主要涉及yum-config-manager
/device-mapper-persistent-data
和lvm2
通过如下命令可以查看本地是否已经安装了相关依赖包
#通过TAB键可以补全相关命令,表示安装成功 yum-config-manager yum list installed | grep device-mapper-persistent-data #查看是否安装device-mapper-persistent-data #如下结果表示已经安装完毕 #device-mapper-persistent-data.x86_64 0.7.3-3.el7 @anaconda yum list installed | grep lvm2 #有结果表示已经安装完毕 #lvm2.x86_64 7:2.02.177-4.el7 @anaconda #lvm2-libs.x86_64 7:2.02.177-4.el7 @anaconda #lvm2-python-libs.x86_64 7:2.02.177-4.el7 @anaconda
如上所示,说明已经安装完毕,无需重复安装。若是未安装完毕,参照官网安装即可
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
2.添加稳定docker源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
通过命令 yum repolist #默认显示enabled,未生效的添加参数disabled即可 查看目前哪些可用的源
3.安装docker
sudo yum install docker-ce
4.将docker添加为开机自启动,同时启动docker服务
sudo systemctl status docker.service #查看服务状态 sudo systemctl enable docker #开机自启动 sudo systemctl start docker #启动服务
启动之后执行 docker version 提示无权限问题
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.38/version: dial unix /var/run/docker.sock: connect: permission denied
通过查看/etc/group文件,发现已经存在docker用户组,但是未配置普通用户
docker:x:983
(若未配置docker用户组,需先执行命令 sudo groupadd docker 添加用户组)
此时,执行命令
sudo usermod -aG docker fengxm #fengxm为需要添加的用户名
执行完毕,发现添加成功 docker:x:983:fengxm
此时,重启电脑或者logout/login,再执行命令 docker version 即可
[[email protected] ~]$ docker version Client: Version: 18.06.1-ce API version: 1.38 Go version: go1.10.3 Git commit: e68fc7a Built: Tue Aug 21 17:23:03 2018 OS/Arch: linux/amd64 Experimental: false Server: Engine: Version: 18.06.1-ce API version: 1.38 (minimum version 1.12) Go version: go1.10.3 Git commit: e68fc7a Built: Tue Aug 21 17:25:29 2018 OS/Arch: linux/amd64 Experimental: false
参考文档:
以上是关于CentOS通过yum安装Docker的主要内容,如果未能解决你的问题,请参考以下文章