目录
一、手动安装
1. 卸载旧版本
查看OS原有版本,旧版本为docker或docker-engine,如果已经安装那么需要卸载。
[root@localhost ~]# yum list all|grep docker #查看系统原有docker版本
[root@localhost ~]# yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine #卸载旧版本docker及依赖
2. 配置Docker仓库
2.1 安装依赖包
[root@localhost ~]# yum -y install device-mapper-persistent-data lvm2 yum-utils #yum-utils 提供yum-config-manager,device mapper存储驱动程序device-mapper-persistent-data和lvm2
2.2 配置仓库
阿里云源地址较快
[root@localhost ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo #添加docker仓库到/etc/yum.repos.d
官方源地址较慢
[root@localhost ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
3. 安装仓库
3.1 最新版本
[root@localhost ~]# yum -y install docker-ce
3.2 旧版本
[root@localhost ~]# yum list docker-ce --showduplicates | sort -r #查看docker版本
* updates: mirrors.ustc.edu.cn
Loading mirror speeds from cached hostfile
Loaded plugins: fastestmirror
Installed Packages
* extras: mirrors.ustc.edu.cn
docker-ce.x86_64 3:24.0.7-1.el7 docker-ce-stable
docker-ce.x86_64 3:24.0.7-1.el7 @docker-ce-stable
docker-ce.x86_64 3:24.0.6-1.el7 docker-ce-stable
docker-ce.x86_64 3:24.0.5-1.el7 docker-ce-stable
......
[root@localhost ~]# yum -y install docker-ce-24.0.5 #安装24.0.5版本
Docker安装完会自动创建docker用户组,但组内没有用户。
[root@localhost ~]# tail -3 /etc/group
sshd:x:74:
cgred:x:996:
docker:x:995:
4. 启动Docker
[root@localhost ~]# systemctl start docker && systemctl enable docker #启动docker并设置开机自启
5. 验证
[root@localhost ~]# docker run hello-world #运行hello-world镜像
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
719385e32844: Pull complete
Digest: sha256:88ec0acaa3ec199d3b7eaf73588f4518c25f9d34f58ce9a0df68429c5af48e8d
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
(amd64)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/
For more examples and ideas, visit:
https://docs.docker.com/get-started/
二、脚本自动安装
[root@localhost ~]# curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun #下载脚本,使用aliyun镜像提高下载速度
[root@localhost ~]# systemctl start docker && systemctl enable docker #开启docker
[root@localhost ~]# docker run hello-world #验证
三、卸载Docker
[root@localhost ~]# yum -y remove docker-ce #删除安装包
[root@localhost ~]# rm -rf /var/lib/docker #删除镜像、容器、配置文件等
四、镜像加速器
Docker客户端大于1.10.0的版本使用
[root@localhost ~]# mkdir -p /etc/docker
[root@localhost ~]# cat >> /etc/docker/daemon.json << EOF #将EOF上的内容写入daemon.json文件
> {
> "registry-mirrors": ["https://dc1yg1ei.mirror.aliyuncs.com"]
> }
> EOF
[root@localhost ~]# systemctl daemon-reload #重新加载
[root@localhost ~]# systemctl restart docker