老版本Docker 名称:docker、docker-engine
Docker CE名称:docker-ce
一. yum安装docker
系统:Centos7及以上版本
1. 卸载老版本docker
sudo yum remove docker \
docker-common \
docker-selinux \
docker-engine
docker存储文件路径:/var/lib/docker(需手动删除)
2. 安装仓库
2.1 安装Docker 所需的包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
2.2 安装stable 仓库
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
2.3 启用edge 及test 仓库
sudo yum-config-manager --enable docker-ce-edge # 启用edge仓库
sudo yum-config-manager --enable docker-ce-test # 启用test仓库
注:禁用edge 及test 仓库命令如下
sudo yum-config-manager --disable docker-ce-edge # 禁用edge仓库
sudo yum-config-manager --disable docker-ce-test # 禁用test仓库
3. 安装Docker CE
3.1 更新yum 的包索引
sudo yum makecache fast
3.2 安装最新版本的Docker CE
sudo yum install docker-ce # 直接安装最新版本的Docker CE
注:安装指定版本的Docker CE
[1] 列出当前可用的Docker CE 版本
yum list docker-ce.x86_64 --showduplicates | sort -r
[2] 安装想要安装的Docker CE版本
sudo yum install docker-ce-<VERSION>
或者
sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
3.3 启动Docker
sudo systemctl start docker # 启动Docker
注:查看安装Docker版本
docker version # 查看Docker版本
3.4 验证Docker 安装是否正确
sudo docker run hello-world
类似以下输出结果说明安装成功
![](https://img.haomeiwen.com/i24066456/f6f600f3a44c2b1b.png)
3.5 升级Docker CE
sudo yum makecache fast
3.6 查看docker执行命令
journalctl -u docker.service -f
二. shell一键安装
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh
三. macOS
系统:macOS Yosemite 10.10.3或更高版本
安装步骤
- 前往https://store.docker.com/editions/community/docker-ce-desktop-mac ,点击页面右侧的“Get Docker”按钮,下载安装包;
- 双击即可安装。
四. Windows(docker for windows)
系统:Windows 10 Professional 或 Windows 10 Enterprise X64,对于Win 7,可使用Docker Toolbox(不建议使用)
安装步骤
- 前往https://store.docker.com/editions/community/docker-ce-desktop-windows ,点击页面右侧的“Get Docker”按钮,下载安装包;
- 双击即可安装。
五. 配置镜像加速器
注册阿里云账号之后访问:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
![](https://img.haomeiwen.com/i24066456/352ac1523396be09.png)
转载:http://www.itmuch.com/docker/02-docker-install/
六. 卸载老版本可能出现的问题
1. 问题:无法删除/var/lib/docker,设备或资源忙(报错信息:Device or resource busy
)
![](https://img.haomeiwen.com/i24066456/c2419e66cf4e117b.png)
解决办法:
umount
取消挂载,之后重新删除/var/lib/docker
# 命令
umount 报错的文件全路径名称
例如:umount /var/lib/docker/overlay2/54e9538be4c4c84d4e849dfefa5745f7928e308583d577afd73d62020c198041/merged
2. 问题:执行umount
命令时报设备繁忙(报错信息:device is busy
)
# 报错信息
umount: /var/lib/docker/overlay2/54e9538be4c4c84d4e849dfefa5745f7928e308583d577afd73d62020c198041/merged: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
解决办法:先查找使用这个文件的进程和命令,强行结束无关进程
# 查找使用这个文件的进程和命令
lsof |grep 文件全路径名称
例如:lsof |grep /var/lib/docker/overlay2/54e9538be4c4c84d4e849dfefa5745f7928e308583d577afd73d62020c198041/merged
# 执行ps命令可以查找执行此进程的命令
ps -ef|grep PID
例如:ps -ef|grep 14137
# 强行结束无关进程
kill -9 PID
例如:kill -9 14137
# 重新取消挂载
umount 文件全路径名称
![](https://img.haomeiwen.com/i24066456/8204a6104c6d5616.png)
3. 问题:执行命令出现 Text file busy
解决办法:
# 查询程序占用进程PID
fuser <程序文件名>
# 强行结束进程
kill -9 PID
网友评论