在 Ubuntu 系统上为轻量服务器部署 Docker 环境是一个常见且高效的操作。以下是详细的步骤,适用于大多数 Ubuntu 版本(如 20.04、22.04 LTS)。
✅ 步骤 1:更新系统包索引
sudo apt update && sudo apt upgrade -y
✅ 步骤 2:安装必要的依赖包
确保系统可以使用 HTTPS 访问仓库:
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
✅ 步骤 3:添加 Docker 官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
✅ 步骤 4:添加 Docker APT 仓库
根据你的 Ubuntu 版本选择合适的命令。以 jammy(Ubuntu 22.04)为例:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
🔍 提示:
$(lsb_release -cs)会自动获取当前系统的代号(如 focal、jammy 等)。
✅ 步骤 5:安装 Docker 引擎
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
✅ 步骤 6:验证 Docker 是否安装成功
sudo docker --version
运行一个测试容器:
sudo docker run hello-world
如果看到欢迎信息,说明安装成功。
✅ 步骤 7:(可选)配置非 root 用户使用 Docker
将当前用户加入 docker 组,避免每次使用 sudo:
sudo usermod -aG docker $USER
⚠️ 执行后需重新登录或重启终端,使组变更生效。
验证是否可以免 sudo 运行:
docker run hello-world
✅ 步骤 8:(推荐)启用 Docker 开机自启
sudo systemctl enable docker
检查状态:
sudo systemctl status docker
✅ (可选)安装 Docker Compose
用于管理多容器应用。
方法一:从 GitHub 发布页下载(推荐)
# 下载最新版本(替换 v2.24.5 为最新版)
sudo curl -L "https://github.com/docker/compose/releases/download/v2.24.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 添加执行权限
sudo chmod +x /usr/local/bin/docker-compose
# 验证
docker-compose --version
💡 提示:访问 https://github.com/docker/compose/releases 查看最新版本。
方法二:通过 pip 安装(不推荐在生产环境使用)
sudo apt install -y python3-pip
pip3 install docker-compose
✅ 安全与性能建议(轻量服务器适用)
-
限制资源使用
在运行容器时指定内存和 CPU 限制,防止占用过多资源:docker run -m 512m --cpus=1 your-image -
定期清理无用镜像和容器
docker system prune -f -
关闭不必要的服务
轻量服务器应精简系统,关闭不用的后台服务。 -
防火墙配置(UFW)
如使用 UFW,确保允许 Docker 使用的端口:sudo ufw allow 80/tcp sudo ufw allow 443/tcp
✅ 总结
你现在已经在 Ubuntu 轻量服务器上成功部署了 Docker 环境!可以开始部署 Web 应用、数据库、博客系统等容器化服务。
例如快速启动 Nginx:
docker run -d -p 80:80 --name nginx-server nginx
🎉 恭喜你完成部署!
如有需要,还可以进一步配置 Docker 私有仓库、监控工具(如 cAdvisor)、或使用 Portainer 图形化管理界面。
需要我帮你写一个自动化部署脚本吗?
CLOUD技术笔记