Linux安装docker
卸载旧版docker
先放官方文档地址:https://docs.docker.com/engine/install/centos/
环境:centos7
安装之前先将yum升级到最新:
[root@localhost ~]# yum update
旧版本docker被称为docker或者是docker-engine,
可以使用docker version命令查看是否已经安装了docker:
docker version
bash: docker: 未找到命令...
如果已经安装旧版本docker就先卸载,卸载命令:
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
最新版的docker被称为docker -ce
安装方式
官方给出总共有三种安装方式:
1.使用仓库安装
2.使用rpm包安装
3.使用脚本安装
我这边只使用第一种方式安装,其他安装方式可以参考官方文档进行安装
使用repository安装docker
设置docker仓库
首先安装yum-utils,这个包提供了yum-config-manager功能
[root@localhost ~]# sudo yum install -y yum-utils
然后就可以设置docker仓库了
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
上面这是官方给出的命令,但是我们这边最好将仓库地址改成阿里云仓库:
[root@localhost ~]# sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
已加载插件:fastestmirror, langpacks
adding repo from: http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
grabbing file http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo
安装docker engine
[root@localhost ~]# sudo yum install docker-ce docker-ce-cli containerd.io
可以安装指定版本的docker,先查看docker可以获得的版本:
yum list docker-ce --showduplicates | sort -r
安装指定版本的docker engine:
sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
配置镜像加速器
这一步是为了以后在下载镜像时使用国内镜像,避免去docker hub中去寻找镜像导致速度过慢
首先去阿里云开通镜像服务,登录阿里云,在产品与服务中搜索容器与镜像服务,点击进入
第一次进入需要开通服务
设置登录密码
在左侧找到镜像加速器,点击CentOS标签,下面的命令即接下来需要执行的命令
接下来执行命令:
[root@localhost ~]# sudo nano /etc/docker/daemon.json
[root@localhost ~]# sudo mkdir -p /etc/docker
[root@localhost ~]# sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [""] #这里填写自己的镜像加速地址
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
启动docker
[root@localhost ~]# systemctl start docker
查看docker状态:
[root@localhost ~]# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
Active: active (running) since Tue 2021-03-23 02:15:33 PDT; 35min ago
Docs: https://docs.docker.com
Main PID: 86537 (dockerd)
Memory: 92.5M
CGroup: /system.slice/docker.service
└─86537 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
Mar 23 02:15:32 localhost.localdomain dockerd[86537]: time="2021-03-23T02:15:32.785294209-07:00...e"
Mar 23 02:15:32 localhost.localdomain dockerd[86537]: time="2021-03-23T02:15:32.802147819-07:00...s"
Mar 23 02:15:32 localhost.localdomain dockerd[86537]: time="2021-03-23T02:15:32.802477410-07:00...."
Mar 23 02:15:33 localhost.localdomain dockerd[86537]: time="2021-03-23T02:15:33.609390150-07:00...s"
Mar 23 02:15:33 localhost.localdomain dockerd[86537]: time="2021-03-23T02:15:33.703638539-07:00...g"
Mar 23 02:15:33 localhost.localdomain dockerd[86537]: time="2021-03-23T02:15:33.880747336-07:00...."
Mar 23 02:15:33 localhost.localdomain dockerd[86537]: time="2021-03-23T02:15:33.971883715-07:00....5
Mar 23 02:15:33 localhost.localdomain dockerd[86537]: time="2021-03-23T02:15:33.972260622-07:00...n"
Mar 23 02:15:33 localhost.localdomain systemd[1]: Started Docker Application Container Engine.
Mar 23 02:15:34 localhost.localdomain dockerd[86537]: time="2021-03-23T02:15:34.019418249-07:00...k"
Hint: Some lines were ellipsized, use -l to show in full.
整个docker安装还算是比较简单的,需要注意的就是首先需要将yum更新,可能需要将仓库换为阿里云仓库,并在安装后配置一个国内镜像地址,其余均和官方文档操作相同
另附知乎参考文章(写的很详细):https://zhuanlan.zhihu.com/p/54147784