本文以腾讯云 Ubuntu 服务器为例,整理从购买服务器、远程登录,到安装 Docker 的完整流程。先准备一台云服务器,并在服务器上安装 Docker 环境。
一、为什么需要单独准备服务器?
一台轻量级云服务器通常就可以满足学习、测试和小规模使用。
二、租赁腾讯云服务器
进入腾讯云官网:
https://cloud.tencent.com/
云服务器购买入口:
https://buy.cloud.tencent.com/cvm
1. 选择计费方式
如果是企业正式使用,或者服务需要长期稳定运行,可以选择长期购买的云服务器。
如果只是学习、测试、临时实验,也可以考虑竞价实例。竞价实例在性能上和普通按量计费实例差别不大,价格通常更低,但稳定性上要注意:当资源被其他高价或长期实例占用时,竞价实例可能被释放。
所以,生产环境更建议选择稳定实例;学习环境可以选择竞价实例节省成本。
2. 选择地域和配置
地域没有强制要求,可以根据自己的访问位置、业务用户所在地、预算情况选择。例如:
4 核 CPU / 8 GB 内存
如果后续访问量较大,再根据实际情况升级配置即可。
3. 选择系统镜像
系统镜像可以选择 CentOS,也可以选择 Ubuntu。本文后续 Docker 安装命令以 Ubuntu 为例。
建议选择较新的 Ubuntu LTS 版本,例如 Ubuntu 22.04 LTS。
4. 配置网络和安全组
购买服务器时,需要配置网络和安全组。
常见需要开放的端口包括:
-
22:SSH 远程登录服务器。 -
80:HTTP 访问。 -
443:HTTPS 访问。
如果只是课程学习或个人测试,可以先开放常用端口,后续根据服务访问情况再调整。生产环境不要无脑放开全部端口,应按最小权限原则配置安全组。
5. 设置实例名称和登录密码
给服务器设置一个容易识别的名称,然后设置登录密码。
密码不要使用课程示例里的简单密码,也不要使用类似 abc_1234 这种弱密码。建议使用长度足够、包含大小写字母、数字和特殊字符的强密码。
完成配置后,提交订单并开通服务器。
三、远程登录服务器
服务器创建成功后,可以在腾讯云控制台看到公网 IP。
使用 XShell、FinalShell、WindTerm 等远程连接工具登录服务器:
主机:服务器公网 IP
端口:22
用户名:ubuntu
密码:购买服务器时设置的密码
如果你选择的系统镜像不是 Ubuntu,默认用户名可能不同。例如部分 CentOS 镜像默认用户可能是 root。具体以腾讯云控制台提示为准。
成功登录后,就可以开始安装 Docker。
四、为什么需要 Docker?
Docker 可以把应用程序和依赖环境打包到容器中,避免手动安装一堆依赖带来的版本冲突和环境不一致问题。
Docker 的好处主要有:
- 一次构建,到处运行:减少开发环境和服务器环境不一致的问题。
- 环境隔离:不同服务之间互不影响。
- 快速部署:容器启动速度快,适合快速上线和迁移。
- 配置简单:环境依赖都封装在镜像中,部署步骤更清晰。
举个例子,如果不用 Docker 部署一个 Web 服务,可能要手动安装 Nginx、数据库、运行时环境和各种依赖。使用 Docker 后,很多服务可以通过一份 docker-compose.yaml 统一启动和管理。
五、在 Ubuntu 上安装 Docker
下面的命令都在云服务器终端中执行。
1. 更新系统软件包
sudo apt update
sudo apt upgrade
执行 sudo apt upgrade 时,如果终端出现确认界面,按回车继续即可。如果界面看起来卡住,也可以再按几次回车确认。
2. 安装 Docker 依赖
sudo apt install software-properties-common
sudo apt-get install ca-certificates curl gnupg lsb-release
3. 添加 Docker GPG 密钥
这里使用阿里云 Docker 镜像源,国内服务器访问会更稳定一些。
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
4. 添加 Docker 软件源
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
执行过程中如果出现提示,按回车继续。
5. 安装 Docker
sudo apt-get install docker-ce docker-ce-cli containerd.io --fix-missing
如果终端提示是否继续安装,输入 y 后回车。
六、启动并验证 Docker
安装完成后,启动 Docker:
sudo systemctl start docker
查看 Docker 状态:
sudo systemctl status docker
如果状态中能看到 running,说明 Docker 已经正常启动。
也可以查看 Docker 版本:
docker --version
七、Docker 启动失败的排查方式
如果安装后 Docker 没有正常启动,可以按下面顺序排查。
1. 查看 Docker 状态
sudo systemctl status docker
先根据错误日志判断问题原因。
2. 取消服务屏蔽
如果 Docker 服务被系统屏蔽,可以执行:
sudo systemctl unmask docker.service
然后重新启动:
sudo systemctl start docker
3. 检查依赖服务
Docker 依赖 containerd,可以查看依赖状态:
systemctl list-dependencies docker.service
如果 containerd 异常,可以尝试启动:
sudo systemctl start containerd
4. 重新安装 containerd
如果 containerd 仍然异常,可以重新安装:
sudo apt-get update
sudo apt-get install --reinstall containerd.io
5. 彻底卸载后重装
如果以上方式都无法解决,可以考虑清理 Docker 相关组件后重新安装:
sudo apt-get purge docker-ce docker-ce-cli containerd.io
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
清理完成后,再重新执行前面的安装步骤。