# 部署文档 ## 环境要求 - **操作系统**: Linux (CentOS 7+) - **Docker**: 20.10+ - **Docker Compose**: 1.29+ - **内存**: 建议 4GB+ - **磁盘**: 建议 50GB+ ## 部署步骤 ### 1. 安装 Docker 和 Docker Compose ```bash # 安装 Docker sudo yum install -y docker sudo systemctl start docker sudo systemctl enable docker # 安装 Docker Compose sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose ``` ### 2. 克隆或创建项目目录 ```bash mkdir -p /home/renjianbo/devops cd /home/renjianbo/devops ``` ### 3. 启动各个服务 #### Gerrit ```bash cd gerrit docker-compose up -d ``` #### Gitea ```bash cd gitea docker-compose up -d ``` #### MinIO ```bash cd minio docker-compose up -d ``` #### Nexus ```bash cd nexus docker-compose up -d ``` #### Drone CI ```bash cd drone-ci docker-compose up -d ``` #### MkDocs ```bash cd mkdocs docker-compose up -d ``` ### 4. 验证部署 ```bash # 检查所有容器状态 docker ps # 检查端口监听 netstat -tlnp | grep -E "8000|8082|3000|9000|8081" ``` ## 配置说明 ### 端口映射 - **Gerrit**: 8082 (HTTP), 29418 (SSH) - **Gitea**: 3000 (HTTP), 222 (SSH) - **MinIO**: 9000 (API), 9001 (Console) - **Nexus**: 8081 (HTTP) - **Drone CI**: 3000 (HTTP) - **MkDocs**: 8000 (HTTP) ### 数据持久化 所有服务的数据存储在 Docker 卷中,确保数据持久化。 ## 备份和恢复 ### 备份 ```bash # 备份所有数据 cd /home/renjianbo/devops ./scripts/backup.sh ``` ### 恢复 ```bash # 恢复数据 cd /home/renjianbo/devops ./scripts/restore.sh ``` ## 监控和维护 ### 查看日志 ```bash # 查看特定服务日志 cd /home/renjianbo/devops/<服务名> docker-compose logs -f ``` ### 更新服务 ```bash # 拉取最新镜像 docker-compose pull # 重启服务 docker-compose up -d ``` ## 故障排查 ### 端口冲突 如果端口被占用,修改 `docker-compose.yml` 中的端口映射。 ### 权限问题 确保数据目录有正确的权限: ```bash sudo chown -R $USER:$USER /home/renjianbo/devops/*/data ``` ### 容器无法启动 查看容器日志: ```bash docker logs <容器名> ```