一、安装前环境准备
在正式安装前需完成基础环境配置,确保系统满足容器运行要求。首先更新本地软件包索引,执行以下命令同步最新元数据:
sudo apt-get update
安装必要的依赖工具链,包括证书管理工具、网络传输工具和目录创建工具:
sudo apt-get install -y ca-certificates curlsudo install -m 0755 -d /etc/apt/keyrings
上述操作确保系统具备安全验证能力和目录管理权限,其中0755权限设置允许所有者读写执行,组用户和其他用户只读执行。
二、配置官方软件源
容器引擎的安装依赖官方维护的软件仓库,需完成三项关键配置:
-
导入GPG密钥
通过安全通道获取官方签名密钥,并设置可读权限供后续验证使用:sudo curl -fsSL [托管仓库的密钥地址] -o /etc/apt/keyrings/container.ascsudo chmod a+r /etc/apt/keyrings/container.asc
该密钥用于验证软件包的真实性和完整性,防止中间人攻击。
-
添加APT仓库
动态生成适配当前系统架构的仓库配置,使用dpkg --print-architecture自动检测系统类型,结合/etc/os-release文件中的版本代号构建仓库地址:echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/container.asc] \[托管仓库的基础地址] \$(. /etc/os-release && echo "${VERSION_CODENAME}") stable" | \sudo tee /etc/apt/sources.list.d/container.list > /dev/null
此配置将容器引擎仓库添加到APT源列表,
stable通道表示获取稳定版本。 -
更新软件索引
执行元数据同步操作,使新添加的仓库生效:sudo apt-get update
三、核心组件安装
容器生态包含多个协同工作的组件,需通过组合安装实现完整功能:
- 基础组件包
docker-ce:容器引擎核心服务docker-ce-cli:命令行管理工具containerd.io:底层运行时接口sudo apt-get install -y docker-ce docker-ce-cli containerd.io
- 开发辅助工具
docker-buildx-plugin:增强型构建工具,支持多平台镜像构建docker-compose-plugin:容器编排工具,简化多容器应用部署sudo apt-get install -y docker-buildx-plugin docker-compose-plugin
四、安装验证与基础测试
完成安装后需验证各组件功能正常,建议执行以下测试流程:
-
服务状态检查
确认容器守护进程已启动并监听默认套接字:sudo systemctl status docker
正常状态应显示
active (running),且无错误日志输出。 -
权限配置验证
非root用户默认无权访问容器服务,需将其加入docker用户组:sudo usermod -aG docker $USERnewgrp docker # 立即生效无需重启会话
-
功能测试
运行官方测试镜像验证全流程功能:docker run --rm hello-world
成功执行后应看到欢迎信息,输出内容包含:
Hello from Docker!This message shows that your installation appears to be working correctly.
五、生产环境优化建议
对于企业级部署场景,建议实施以下增强措施:
-
镜像加速配置
在/etc/docker/daemon.json中添加国内镜像源加速下载:{"registry-mirrors": ["https://<镜像加速器地址>"]}
修改后重启服务生效:
sudo systemctl restart docker
-
资源限制配置
通过cgroups限制容器资源使用,在daemon.json中添加:{"default-ulimits": {"nofile": {"Name": "nofile","Hard": 65535,"Soft": 65535}}}
-
日志轮转配置
设置日志驱动和轮转策略,防止磁盘空间耗尽:{"log-driver": "json-file","log-opts": {"max-size": "10m","max-file": "3"}}
六、常见问题处理
-
依赖冲突解决
若遇到Unable to locate package错误,先执行apt-get update刷新索引,再检查仓库地址是否配置正确。 -
权限不足问题
容器操作报permission denied时,确认用户已加入docker组,且通过newgrp命令激活组权限。 -
网络连接失败
检查系统防火墙规则,确保2375/2376端口(如启用远程访问)或/var/run/docker.sock套接字可访问。
本指南提供的标准化安装流程经过多版本验证,适用于Ubuntu 20.04/22.04 LTS等长期支持版本。通过系统化的配置管理和验证测试,可确保容器环境稳定可靠,为后续的微服务部署、CI/CD流水线构建等场景奠定基础。建议定期执行apt-get upgrade获取安全更新,并关注官方文档获取最新最佳实践。