教你在云服务器上部署 docker(Ubuntu版本)
部署 docker(Ubuntu版本)
云服务器,或者是通过虚拟机(VMware Workstation Pro)的Linux系统,都可以通过这个博客,安装 docker。
1. 操作系统准备
建议是 Ubuntu 20.04 (LTS) 往上走的,当然,一般购买的云服务器,都是 Ubuntu 最新版本的
虚拟机(VMware Workstation Pro)的Linux系统,也建议是 Ubuntu 20.04 (LTS) 往上走的
2. 准备工作
2.1 检查版本
使用 Xshell 连接好云服务器之后,输入指令:cat /etc/*release*

2.2 检查 CPU
确定 CPU,可以看到我们的是 X86_64,是支持的,如果是 arm 一般会显示 aarch64
输入指令:uname -a

2.3 检查是否 docker 曾经安装过
输入指令:docker version
如果是输出这样的,证明你没有安装过,不需要再执行 1.1.4 标题的卸载操作。

如果是输出下面这种,说明你安装过,需要执行卸载命令,重新安装一下最新的
Client:
Version: 29.0.0
...
Server:
Engine:
Version: 29.0.0
...
2.4 卸载 docker (确定需要卸载,再执行)
卸载旧版本,如果是新购买的云服务器是没有的,比如输入 docker 并没有这个命令,就不需要卸载。
卸载旧版本:
输入指令:sudo apt-get remove docker docker-engine docker.io containerd runc

卸载历史版本:
输入指令:
#卸载软件
sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras -y
#删除目录
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
卸载软件的指令有点长,怕你复制之后会截断,我就给你复制出来:sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras -y

到这里,我们就卸载好 docker 了。可以开始重新安装 docker 了。
3. 安装 docker
3.1 配置 Docker 下载源(Ubuntu)
- 安装 curl
sudo apt update
sudo apt install -y curl
- 创建 GPG Key 存放目录
sudo mkdir -m 0755 -p /etc/apt/keyrings
这个 GPG Key,相当于是一个签名,需要下载这个签名,然后根据这个签名,才可以下载 Docker
这个也是处于安全考虑的
- 下载 Docker 官方 GPG Key
输入指令:curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor --yes -o /etc/apt/keyrings/docker.gpg
- 添加 Docker 官方软件源
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
我们可以查看这个文件夹下,存放了什么
指令:cat /etc/apt/sources.list.d/docker.list
输出的结果是:
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable
这些文件表示当前 Docker 软件源配置为:
- 架构:
amd64 - GPG Key:
/etc/apt/keyrings/docker.gpg - 软件源地址:
https://download.docker.com/linux/ubuntu - Ubuntu 版本:
jammy(Ubuntu 21.04) - 软件源分支:
stable
- 更新软件源
sudo apt update
更新软件源,是因为我们第四步,已经 添加了Docker官方软件源 了。
3.2 安装 docker 组件
输入指令:
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
这条指令下载的东西有:
| 软件包 | 作用 | 是否必须 |
|---|---|---|
docker-ce | Docker Engine(Docker 引擎),负责创建、运行、停止容器 | ✅ 必须 |
docker-ce-cli | Docker 命令行工具,例如 docker run、docker ps | ✅ 必须 |
containerd.io | 容器运行时,真正负责创建和管理容器 | ✅ 必须 |
docker-buildx-plugin | Docker Buildx 插件,用于增强镜像构建能力 | ⭐ 推荐 |
docker-compose-plugin | Docker Compose 插件,用于管理多个容器 | ⭐ 推荐 |
如果你的云服务器版本比较新,可能会出现这个界面:

这个界面不是 Docker 安装报错,不用紧张。它是 Linux 在安装/更新软件时弹出来的一个服务重启确认界面。
那么,你的下一步操作是:
按 Tab → 选中 <Ok> → 按 Enter 即可。
如果你的界面长这样:

说明你的 docker 安装好了。
3.3 检查 docker
输入指令:docker --version
如果输出结果是这样的:
root@你自己的云服务器名称:~# docker --version
Docker version 29.6.2, build dfc4efb
说明安装成功了。
另外还有两个指令能检测:
# 查看 Client / Server 版本
docker version
# 查看 Docker 运行状态
docker info
3.4 自动启动配置
下面的指令,一条一条的执行
#配置加载
sudo systemctl daemon-reload
#启动服务
sudo systemctl start docker
#开启启动
sudo systemctl enable docker
#查看服务状态
sudo systemctl status docker
如果上述指令没有出现报错,且出现这个页面:

说明 docker 安装成功,服务也启动起来了,可以使用 docker 了。
4. 检测 docker 服务是否正常
4.1 安装成功界面
执行命令:
sudo docker run hello-world
如果界面是这样的:

说明我们的 docker 已经完全安装完成,后续可以使用了
4.2 异常结果(大多数情况):
如果是出现这样的结果:
root@iZwz9gkais4sddfp76izy7Z:~# sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
docker: Error response from daemon: failed to resolve reference "docker.io/library/hello-world:latest": failed to do request: Head "https://registry-1.docker.io/v2/library/hello-world/manifests/latest": dial tcp 174.37.243.85:443: i/o timeout
Run 'docker run --help' for more information
这是因为,服务器访问 Docker Hub 网络不通或者很慢
这种情况,是国内最常见的问题。
解决方法:配置 Docker 镜像加速器
编辑配置文件:
sudo mkdir -p /etc/docker
sudo nano /etc/docker/daemon.json
写入:
{
"registry-mirrors": [
"https://docker.1ms.run"
]
}

输入好之后,跟着我按:
-
Ctrl + O
底部会出现类似:
File Name to Write: /etc/docker/daemon.json -
Enter
即可保存
-
Ctrl + X
退出编辑界面
保存后执行:
sudo systemctl daemon-reload
sudo systemctl restart docker
然后再试:
docker run hello-world
最后,出现这个界面:

说明我们的 docker 已经完全安装完成,后续可以使用了
5. 退出 docker 服务
操作步骤
- 停止 compose 项目(优雅关闭容器)
docker compose -p bite_wear -f docker-compose-mid.yml down
这个命令会停止并删除容器,数据卷的数据不会丢,后续可以重新 up 起来。
- 关闭整个 docker 服务
systemctl stop docker
此时 docker 完全停止,容器全部不运行,释放内存。
重新启动 docker容器 & docker服务
# 启动docker服务
systemctl start docker
# 重新拉起容器
docker compose -p bite_wear -f docker-compose-mid.yml up -d
6. 结尾:
最后,如果这篇博客能帮到你的,请你点点赞,有写错了,写的不好的,欢迎评论指出,谢谢!
更多推荐
所有评论(0)