一、环境准备与前置条件
在Ubuntu系统部署Docker前,需确保系统满足以下基础条件:
- 操作系统版本:推荐使用LTS版本(如22.04或20.04)
- 用户权限:需具备root权限或sudo权限
- 网络连接:可访问互联网以下载软件包
- 磁盘空间:建议预留至少5GB可用空间
建议先执行系统更新命令,确保基础软件包处于最新状态:
sudo apt-get update && sudo apt-get upgrade -y
二、依赖组件安装
Docker运行需要多个底层依赖组件支持,通过以下命令完成基础环境搭建:
sudo apt-get install -y \apt-transport-https \ca-certificates \curl \gnupg-agent \software-properties-common
各组件作用说明:
apt-transport-https:支持通过HTTPS协议访问软件源ca-certificates:提供SSL证书验证能力curl:网络请求工具gnupg-agent:GPG密钥管理服务software-properties-common:软件源管理工具
三、安全密钥配置
为确保软件包来源可信,需配置官方GPG密钥:
curl -fsSL https://[托管仓库链接]/linux/ubuntu/gpg | \sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
该操作将完成:
- 从官方渠道下载GPG密钥
- 转换密钥格式为二进制
- 存储至系统信任的密钥环目录
四、软件源配置
创建稳定的Docker软件源配置文件,需根据系统架构动态生成配置内容:
echo "deb [arch=$(dpkg --print-architecture) \signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] \https://[托管仓库链接]/linux/ubuntu \$(lsb_release -cs) stable" | \sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
配置要点解析:
arch参数:自动检测系统架构(amd64/arm64等)signed-by:指定验证密钥路径$(lsb_release -cs):自动获取系统代号(如jammy/focal)
五、核心组件安装
完成软件源配置后,执行以下命令安装Docker核心组件:
sudo apt-get updatesudo apt-get install -y docker-ce docker-ce-cli containerd.io
组件功能说明:
docker-ce:Docker引擎主程序docker-ce-cli:命令行交互工具containerd.io:底层容器运行时
六、安装验证
通过运行测试容器验证安装完整性:
sudo docker run --rm hello-world
成功执行后应看到以下输出:
Hello from Docker!This message shows that your installation appears to be working correctly....
七、权限优化配置
1. 非root用户管理
默认情况下Docker需要root权限运行,可通过以下步骤配置普通用户权限:
sudo usermod -aG docker $USERnewgrp docker # 立即生效(无需重启)
2. 服务管理命令
掌握Docker服务的启停控制:
# 启动服务sudo systemctl start docker# 设置开机自启sudo systemctl enable docker# 查看服务状态sudo systemctl status docker
3. 镜像加速配置(可选)
对于国内用户,建议配置镜像加速器提升下载速度。创建或修改/etc/docker/daemon.json文件:
{"registry-mirrors": ["https://[镜像加速器地址]"]}
然后重启服务使配置生效:
sudo systemctl restart docker
八、卸载与清理
如需完全移除Docker,执行以下清理命令:
# 卸载软件包sudo apt-get purge docker-ce docker-ce-cli containerd.io# 删除残留文件sudo rm -rf /var/lib/dockersudo rm -rf /var/lib/containerd
九、最佳实践建议
- 版本锁定:生产环境建议指定具体版本安装,避免自动升级导致兼容性问题
- 资源限制:通过
--memory和--cpus参数限制容器资源使用 - 日志管理:配置日志驱动和轮转策略,防止日志文件占用过多磁盘空间
- 安全加固:定期更新Docker版本,及时修复已知安全漏洞
通过本指南的系统化部署,开发者可在Ubuntu系统快速构建标准化的容器运行环境。后续可结合容器编排工具(如Kubernetes)或持续集成系统,构建完整的容器化开发流水线。建议定期关注官方文档更新,掌握容器技术的最新发展动态。