本文是为需要在Ubuntu系统部署容器服务的开发者准备的详细教程。我们将分两个主要部分讲解:Docker引擎的标准安装流程和Docker Compose的配置方法。所有操作均在终端执行,建议使用Ubuntu 18.04及以上版本。
一、Docker引擎安装全流程
 (总耗时约5-10分钟,需root权限)
1. 系统环境准备
 在开始安装前,建议先更新软件源并升级现有软件包:
  
sudo apt-get update       # 刷新软件源索引
sudo apt-get upgrade -y   # 自动升级所有可更新软件包 
 
 注意:若系统提示需要重启(如内核升级),建议执行`sudo reboot`重启后再继续
2. 安装必备依赖组件
  
sudo apt-get install -y \ca-certificates \    # SSL证书支持curl \               # 网络传输工具gnupg \             # 加密签名工具lsb-release         # 系统版本信息工具 
 
 这些依赖确保后续安装过程的安全性和兼容性
3. 官方脚本自动化安装
 推荐使用Docker官方提供的一键安装脚本:
  
curl -fsSL https://test.docker.com -o test-docker.sh  # 下载安装脚本
sh test-docker.sh                                    # 执行安装程序 
 
 说明:此脚本会自动完成以下工作:
 - 添加Docker官方GPG密钥
 - 设置稳定版仓库
 - 安装containerd运行时
 - 配置docker-ce核心组件
 - 创建docker用户组
4. 配置国内镜像加速(关键步骤)
 由于默认仓库访问较慢,需配置镜像源加速:
  
sudo vim /etc/docker/daemon.json  # 使用nano编辑器可替换为sudo nano 
 
 输入以下内容(建议保留3-4个镜像源):
  
{"registry-mirrors": ["https://docker.m.daocloud.io",    # 道克镜像"https://docker.imgdb.de",         # 德国镜像"https://docker-0.unsee.tech",     # 美国西海岸镜像"https://docker.hlmirror.com"      # 香港镜像]
}保存后按Esc输入:wq退出vim 
5. 重启服务使配置生效
  
sudo systemctl daemon-reload     # 重载服务配置
sudo systemctl restart docker    # 重启docker服务
sudo systemctl enable docker     # 设置开机自启(可选) 
 验证服务状态:
`systemctl status docker`应显示active(running) 
6. 功能验证测试
 执行基础镜像拉取测试:
  
sudo docker pull hello-world    # 下载测试镜像
sudo docker run hello-world     # 运行测试容器 
成功输出"Hello from Docker!"即表示安装成功
二、Docker Compose安装指南
 (Docker官方推荐使用插件形式安装)
1. 执行安装命令
  
sudo apt install -y docker-compose-plugin  # 安装官方插件版 
 
 该版本相较于传统的docker-compose有以下优势:
 - 直接集成到docker CLI
 - 版本与Docker Engine同步更新
 - 兼容compose v2语法
2. 验证安装结果
  
docker compose version  # 注意中间没有短横线 
 预期输出示例:
 Docker Compose version v2.17.2
三、进阶配置建议
1. 非root用户权限配置(可选)
 为避免每次使用sudo,可将当前用户加入docker组:
  
sudo usermod -aG docker $USER   # $USER替换为具体用户名
newgrp docker                   # 刷新用户组 
 
 注意:修改后需要重新登录生效
2. 常用维护命令
 - 查看docker版本:`docker version`
 - 查看系统信息:`docker info`
 - 清理无用镜像:`docker system prune`
四、常见问题排查
Q1:镜像拉取速度慢
 A:检查daemon.json配置格式,建议注释掉部分镜像源测试
Q2:权限拒绝错误
 A:执行`sudo chmod 777 /var/run/docker.sock`临时解决,建议使用用户组方案
Q3:脚本安装失败
 A:可尝试官方备用方案:
  
sudo apt-get install docker-ce docker-ce-cli containerd.io 
  
五、版本兼容说明
 - Docker 23.x+ 已内置Compose插件
 - 旧版Compose文件需注意volume语法差异
 - 建议定期执行`sudo apt-get upgrade docker-*`保持更新
六、安全建议
 1. 定期清理无用镜像:`docker image prune`
 2. 避免使用--privileged特权模式
 3. 生产环境建议配置TLS证书加密
通过本教程,您已完成Docker环境的完整部署。接下来可以:
 - 尝试部署Nginx:`docker run -d -p 80:80 nginx`
 - 学习Dockerfile编写
 - 使用docker-compose编排多容器应用