Ubuntu和Windows下安装和卸载Docker¶
约 1245 个字 55 行代码 预计阅读时间 5 分钟
Ubuntu安装Docker¶
更新APT软件源和安装必要工具¶
打开终端(Terminal),先更新包索引并安装所需依赖:
| Bash | |
|---|---|
1 2 | |
添加Docker官方GPG密钥¶
创建密钥目录,并下载官方签名密钥:
| Bash | |
|---|---|
1 2 3 | |
如果下载时出现:
| Bash | |
|---|---|
1 2 | |
这个错误基本上说明Ubuntu机器无法通过HTTPS正常访问Docker官方的GPG Key下载地址download.docker.com,连接被远程服务器重置(Connection reset by peer),常见原因是网络访问受限、TLS/HTTPS连接问题,尤其是在国内或者有防火墙/代理环境的服务器上经常出现
解决方式可以考虑切换为国内的镜像源:
改用国内镜像(如阿里云或腾讯云)来下载 Docker 的 GPG key:
| Bash | |
|---|---|
1 | |
或者腾讯云:
| Bash | |
|---|---|
1 | |
再继续后面的步骤
添加Docker软件源¶
| Bash | |
|---|---|
1 2 3 4 5 6 7 | |
然后:
| Bash | |
|---|---|
1 | |
安装Docker Engine¶
运行以下命令安装Docker及其常用组件(包括 CLI、containerd、Compose 插件等):
| Bash | |
|---|---|
1 | |
安装完成后,Docker服务会自动启动。
验证Docker是否成功安装¶
| Bash | |
|---|---|
1 | |
如果输出Hello from Docker!则说明 Docker 安装成功。
也可以输入下面的命令查看Docker版本:
| Bash | |
|---|---|
1 | |
使用下面的命令查看Docker的运行状态:
| Bash | |
|---|---|
1 | |
使用下面的命令查看Docker更详细的信息:
| Bash | |
|---|---|
1 | |
允许当前用户不使用 sudo 运行Docker(可选)¶
(安全视项目情况而定)
| Bash | |
|---|---|
1 | |
然后退出终端重新登录,使权限更新生效
配置开机自启¶
使用下面的命令:
| Bash | |
|---|---|
1 | |
Ubuntu卸载Docker¶
卸载Docker包¶
| Bash | |
|---|---|
1 | |
这步骤会删除Docker引擎和核心组件包
删除Docker数据文件(可选但通常需要)¶
注意:这步会永久删除所有容器、镜像、卷、网络等数据。
| Bash | |
|---|---|
1 2 | |
如有自定义配置,也可以清理:
| Bash | |
|---|---|
1 | |
清理软件源和GPG密钥¶
| Bash | |
|---|---|
1 2 | |
之后可以执行:
| Bash | |
|---|---|
1 2 | |
彻底清理残留依赖
其他常见卸载清理(可选)¶
如果Docker是通过Snap安装的,可以:
| Bash | |
|---|---|
1 2 | |
也可检查用户组:
| Bash | |
|---|---|
1 | |
确保不会留下配置或组设置
Windows安装和卸载Docker¶
下载地址:下载Docker Desktop
Windows下安装Docker首先需要确保开启了虚拟化。通常建议选用WSL2作为后端(需要启用Windows Subsystem for Linux2功能)
需要注意,建议同时在Windows功能中打开Hyper-V、Virtual Machine Platform和Windows Subsystem For Linux
然后输入下面的命令安装WSL:
| Bash | |
|---|---|
1 | |
设置WSL版本为WSL2:
| Bash | |
|---|---|
1 | |
Note
如果当前的Windows不支持Hyper-V,那么选“Use WSL 2 instead of Hyper-V”
双击安装程序安装Docker即可,卸载Docker时使用相关的卸载工具卸载即可
切换Docker镜像源¶
创建或编辑 Docker 配置文件¶
| Bash | |
|---|---|
1 2 | |
如果文件已经存在,就直接编辑它
添加国内镜像源地址¶
在 daemon.json 中写入如下内容,例如:
| JSON | |
|---|---|
1 2 3 4 5 6 7 | |
其中:
docker.m.daocloud.io— DaoCloud公共加速器hub-mirror.c.163.com— 网易云镜像加速器mirror.baidubce.com— 百度云镜像加速器
也可以根据网络测试结果换成其他可用镜像源,保存后退出当前编辑器
重新加载并重启 Docker¶
保存配置后运行:
| Bash | |
|---|---|
1 2 | |
这会使新的镜像源生效
检查镜像源是否生效¶
运行:
| Bash | |
|---|---|
1 | |
你应该能看到类似这样的输出:
| Text Only | |
|---|---|
1 2 3 4 | |
如果看见了上面这些镜像地址,就说明配置成功了。需要注意:
- JSON格式必须准确,要确保逗号、引号等符号正确,否则配置文件会导致Docker启动失败
-
如果Docker启动失败,可以查看状态日志:
Bash 1sudo journalctl -u docker.service -n 100
专属阿里云加速器(可选)¶
如果希望镜像下载尽可能稳定和快,可以:
- 登录阿里云账号
- 在“容器镜像服务” → 镜像加速器页面获取你自己的加速地址
- 在
daemon.json的registry-mirrors中填上你个人的专属加速地址,例如:
| Text Only | |
|---|---|
1 | |
也可以同时写入多个镜像源
配置镜像目录¶
Docker默认的安装目录为/var/lib/docker,这里面会存放很多很多镜像,所以我们在安装的时候需要考虑这个目录的空间,有三种解决方案:
- 将
/var/lib/docker挂载到一个大的磁盘,这种一般我们能控制挂载目录,像腾讯云这种云厂商在安装 K8s 的节点的时候提供了挂载选项,可以直接挂载这个目录过去 - 安装之前挂载一个大的磁盘,然后创建一个软链接到
/var/lib/docker,这样就自动安装到我们空间比较大的磁盘了 - 安装了Docker,然后发现忘了配置这个目录,需要修改Docker的配置文件
下面主要介绍第三种方案:
假设现在有一个磁盘比较大的目录/data,首先创建配置文件并输入下面的内容:
| JSON | |
|---|---|
1 2 3 | |
重新加载并重启Docker:
| Bash | |
|---|---|
1 2 | |
修改完成后原目录中的内容也会迁移到新的目录