在轻量服务器(如阿里云、腾讯云、AWS 等)上部署 Docker 环境,推荐采用官方源安装方式,以确保版本最新且稳定。以下是基于 CentOS 7/8 的完整部署步骤:
✅ 一、系统准备
-
确认系统版本
cat /etc/redhat-release若为 CentOS 7,需先升级内核至 3.10+(多数云厂商默认已满足);CentOS 8 建议切换到 Stream 或迁移至 Rocky Linux/AlmaLinux(因 CentOS 8 已于 2021 年 EOL)。
-
更新系统 & 安装基础工具
sudo yum update -y sudo yum install -y yum-utils device-mapper-persistent-data lvm2
✅ 二、配置 Docker 官方 YUM 源
# 添加 Docker 官方 GPG 密钥和仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# (可选)指定版本频道,如 stable(默认)、test、edge
# sudo yum-config-manager --setopt docker-ce-stable.enabled=1
💡 提示:若网络受限,可改用国内镜像提速(如阿里云镜像站):
sudo sed -i 's|download.docker.com|mirrors.aliyun.com/docker-ce|g' /etc/yum.repos.d/docker-ce.repo
✅ 三、安装 Docker Engine
# 安装 Docker CE 及 CLI
sudo yum install -y docker-ce docker-ce-cli containerd.io
# 启动 Docker 服务并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
✅ 验证安装:
docker --version
docker run hello-world
若看到
Hello from Docker!输出,说明部署成功。
✅ 四、优化配置(轻量服务器必备)
1. 非 root 用户运行 Docker(避免 sudo)
sudo usermod -aG docker $USER
newgrp docker # 立即生效,无需重启
2. 调整日志驱动(节省磁盘空间)
编辑 /etc/docker/daemon.json:
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
}
}
然后重启 Docker:
sudo systemctl restart docker
3. 配置镜像提速器(提升拉取速度)
继续编辑 /etc/docker/daemon.json,添加 registry-mirrors(以阿里云为例):
{
"registry-mirrors": ["https://<你的专属ID>.mirror.aliyuncs.com"]
}
🔗 获取地址:https://cr.console.aliyun.com → 镜像提速
重启后生效:
sudo systemctl daemon-reload
sudo systemctl restart docker
✅ 五、安全加固建议(生产环境)
- 限制 Docker 暴露端口(仅开放必要端口)
- 使用
--userns-remap启用用户命名空间隔离(高级) - 定期更新 Docker:
sudo yum update docker-ce docker-ce-cli
📌 常见问题排查
| 问题 | 解决方案 |
|---|---|
docker: command not found |
检查 PATH 或重新登录终端执行 newgrp docker |
| 拉取镜像超时 | 更换镜像提速器;检查防火墙(firewall-cmd --list-all) |
| 容器无法访问网络 | 检查 iptables 规则:iptables -t nat -L POSTROUTING |
需要我提供:
- 🐳 一键部署脚本?
- 🚀 快速启动 Nginx/MySQL 示例?
- 🔒 SELinux 兼容配置指南?
欢迎告诉我你的具体场景,我可进一步定制方案!
PHPWP博客