温馨提示×

如何在Ubuntu上使用GitLab进行项目管理

小樊
41
2025-11-19 04:53:23
栏目: 智能运维

在 Ubuntu 上使用 GitLab 进行项目管理的实操指南

一 环境准备与安装

  • 更新系统并安装依赖
    • 执行:sudo apt update && sudo apt upgrade -y
    • 安装:sudo apt install -y curl openssh-server ca-certificates tzdata perl
  • 添加 GitLab 官方仓库并安装(社区版 CE)
    • 执行:curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
    • 安装:sudo apt install -y gitlab-ce
  • 首次配置与启动
    • 设置访问地址:sudo vim /etc/gitlab/gitlab.rb,将 external_url 改为服务器 IP/域名(如:http://192.168.1.100https://git.example.com
    • 应用配置:sudo gitlab-ctl reconfigure
    • 常用运维:sudo gitlab-ctl start|restart|status|tail
  • 访问与初始化
    • 浏览器访问:http://<YOUR_IP_OR_DOMAIN>
    • 首次登录设置 root 密码;如文件存在可查看初始密码:sudo cat /etc/gitlab/initial_root_password(文件通常在首次成功登录后 24 小时 自动删除,建议尽快修改密码并妥善保管)

二 安全与网络配置

  • 防火墙放行
    • UFW:sudo ufw allow http && sudo ufw allow https && sudo ufw allow ssh
    • firewalld:sudo firewall-cmd --permanent --add-service=http && sudo firewall-cmd --permanent --add-service=https && sudo firewall-cmd --permanent --add-service=ssh && sudo firewall-cmd --reload
  • 启用 HTTPS(推荐)
    • /etc/gitlab/gitlab.rb 中配置 external_url "https://<YOUR_DOMAIN>",并放置或申请 TLS/SSL 证书(可使用 Let’s Encrypt),随后执行 sudo gitlab-ctl reconfigure
  • 资源与稳定性
    • GitLab 推荐至少 4GB RAM(最低 2GB);资源紧张时可适当做内存优化(如调整数据库缓存、并发与监控组件),修改后需 reconfigurerestart 生效

三 项目管理核心流程

  • 创建项目与代码托管
    • Web:登录后点击 New project,填写名称、描述与可见性(Private/Internal/Public),可选择以 README 初始化
    • 本地关联与推送:
      • 克隆:git clone <repo-url>
      • 提交:git add . && git commit -m "feat: init project"
      • 推送:git push origin main(或 master,视仓库默认分支而定)
  • 协作与代码审查
    • 使用 Issues 管理任务/Bug(指派、标签、里程碑、评论)
    • 通过 Merge Requests 发起代码评审、讨论与合并;配合 分支保护 保障主干稳定
  • 权限与可见性
    • 角色体系:Guest / Reporter / Developer / Maintainer / Owner
    • 项目可见性:Private / Internal / Public,结合成员角色精细化授权

四 自动化与运维实践

  • CI/CD 持续集成与交付
    • 在项目根目录创建 .gitlab-ci.yml,定义 build / test / deploy 等阶段;提交后自动触发 Pipeline,可在项目页查看任务状态与日志
  • 备份与恢复
    • 备份:sudo gitlab-backup create(默认备份到 /var/opt/gitlab/backups
    • 恢复:先确保版本一致,停止相关服务后执行 sudo gitlab-backup restore BACKUP=<timestamp>,再 sudo gitlab-ctl reconfigure && sudo gitlab-ctl restart
  • 监控与维护
    • 状态与日志:sudo gitlab-ctl statussudo gitlab-ctl tail
    • 升级:执行 sudo apt update && sudo apt install gitlab-ce,随后 sudo gitlab-ctl reconfigure
  • 可选 容器化部署(Docker)
    • 运行示例:
      • docker run --detach --hostname <YOUR_DOMAIN> --publish 443:443 --publish 80:80 --publish 22:22 --name gitlab --restart always --volume /srv/gitlab/config:/etc/gitlab --volume /srv/gitlab/logs:/var/log/gitlab --volume /srv/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest
    • 访问方式与本地部署一致,便于隔离与迁移

0