# 5分钟极速部署Rancher 2.7.5:Ubuntu 22.04上的Docker Compose实践指南
当你想快速体验Kubernetes管理平台却苦于复杂的多节点部署时,Rancher的单机版部署方案能让你在喝杯咖啡的时间里搭建起完整的测试环境。本文将带你用Docker Compose在Ubuntu 22.04上快速部署Rancher 2.7.5,这种方案特别适合个人开发者、初创团队或需要快速验证概念的场景。相比传统多节点部署需要数小时的配置时间,我们通过容器编排技术将其压缩到5分钟以内,同时保持生产级的安全配置。
1. 环境准备与前置检查
在开始部署前,确保你的Ubuntu 22.04系统满足以下基本要求:
- 硬件配置:至少2核CPU、4GB内存和20GB可用磁盘空间。虽然Rancher本身资源需求不高,但考虑到后续要管理的Kubernetes集群,建议配置越高越好。
- 网络环境:稳定的互联网连接用于拉取Docker镜像,建议带宽不低于10Mbps。
- 系统更新:执行以下命令确保系统处于最新状态:
sudo apt update && sudo apt upgrade -y
验证Docker和Docker Compose的安装情况。Rancher 2.7.5需要Docker 20.10.x及以上版本,以及Compose插件v2:
docker --version docker compose version
如果尚未安装,可以通过官方脚本快速安装:
# 安装Docker引擎 curl -fsSL https://get.docker.com | sudo sh # 安装Compose插件 sudo apt install docker-compose-plugin
> 提示:生产环境建议配置Docker镜像加速器,可大幅提升镜像拉取速度。阿里云、腾讯云等厂商都提供免费加速服务。
2. Docker Compose编排配置
传统Docker命令部署方式需要记忆大量参数,而使用Docker Compose可以通过声明式配置实现更规范的部署。创建docker-compose.yml文件:
version: '3' services: rancher: image: rancher/rancher:v2.7.5 container_name: rancher restart: unless-stopped privileged: true ports: - "80:80" - "443:443" volumes: - rancher_data:/var/lib/rancher healthcheck: test: ["CMD", "curl", "-k", "-f", "https://localhost/ping"] interval: 30s timeout: 10s retries: 3 volumes: rancher_data:
这个配置实现了几个关键优化:
- 数据持久化:通过命名卷
rancher_data保存Rancher的数据库和配置 - 健康检查:自动监控服务可用性
- 特权模式:确保容器具有足够权限运行Rancher服务
- 端口映射:同时暴露HTTP和HTTPS端口
启动服务只需一行命令:
docker compose up -d
部署进度可以通过以下命令实时查看:
docker compose logs -f rancher
当看到以下日志时表示启动完成:
2023/xx/xx xx:xx:xx [INFO] Rancher version v2.7.5 is starting
3. 初始安全配置
首次访问https://localhost(或服务器公网IP)时会进入初始化页面。由于我们使用自签名证书,浏览器会显示安全警告,这是正常现象。
关键配置步骤:
- 设置管理员密码:
- 输入符合复杂要求的密码(至少12位,含大小写字母、数字和特殊字符)
- 建议使用密码管理器生成并保存
- 服务器URL配置:
- 如果是本地测试,保持默认的
https:// <你的服务器ip>你的服务器ip> - 计划长期使用时,建议配置真实域名并启用Let’s Encrypt自动证书
- 如果是本地测试,保持默认的
- 界面语言切换:
- 登录后点击右下角语言选择器切换为中文
- 刷新页面后所有菜单将本地化显示
> 注意:切勿在生产环境使用自签名证书。可通过以下命令快速获取Let’s Encrypt证书(需先绑定域名):
sudo apt install certbot sudo certbot certonly --standalone -d yourdomain.com
4. 快速体验Rancher核心功能
Rancher启动后,最快捷的体验方式是导入现有集群。如果没有现成的Kubernetes集群,可以先用minikube或k3s创建一个本地测试集群。
使用k3s创建测试集群:
# 在另一台服务器或本地WSL中执行 curl -sfL https://get.k3s.io | sh - # 获取加入集群的token sudo cat /var/lib/rancher/k3s/server/node-token
在Rancher中导入集群:
- 进入"集群管理"页面,点击"导入现有集群"
- 输入集群名称(如"dev-cluster")
- 复制生成的注册命令,在目标服务器上执行
- 等待约2分钟,集群状态变为"Active"
基础功能体验:
- 工作负载管理:尝试部署一个Nginx服务
- 进入集群仪表盘,选择"工作负载"
- 点击"部署",填写镜像名称
nginx:alpine - 设置副本数为3,点击"创建"
- 服务暴露:
- 在工作负载列表找到刚创建的部署
- 点击"…"选择"编辑YAML"
- 添加Service配置后保存:
apiVersion: v1 kind: Service metadata: name: nginx-service spec: selector: app: nginx ports: - protocol: TCP port: 80 targetPort: 80 type: NodePort
- 监控查看:
- 在集群页面启用监控功能
- 等待约10分钟组件初始化
- 查看集群资源使用率和Pod状态
5. 日常维护与优化建议
单机版Rancher虽然简化了部署,但仍需要注意以下维护事项:
数据备份策略:
# 定期备份Rancher数据卷 docker run --rm --volumes-from rancher -v $(pwd):/backup busybox tar cvf /backup/rancher-backup.tar /var/lib/rancher
资源监控配置:
在docker-compose.yml中添加资源限制:
services: rancher: deploy: resources: limits: cpus: '2' memory: 4G reservations: cpus: '1' memory: 2G
日志轮转设置:
创建/etc/docker/daemon.json配置日志策略:
{ "log-driver": "json-file", "log-opts": { "max-size": "10m", "max-file": "3" } }
重启Docker服务使配置生效:
sudo systemctl restart docker
遇到性能问题时,可以尝试以下优化手段:
- 增加
/var/lib/rancher挂载卷的IOPS性能 - 为Docker配置专用存储驱动(如zfs)
- 定期清理无用镜像和容器释放空间
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/270829.html