使用 Docker 部署 GitLab
标签搜索
侧边栏壁纸
  • 累计撰写 16 篇文章
  • 累计收到 0 条评论

使用 Docker 部署 GitLab

心底有颗枇杷树
2025-03-11 / 0 评论 / 2 阅读 / 正在检测是否收录...

GitLab 是一个功能强大的 DevOps 平台,集成了 Git 代码管理、CI/CD、代码审查等功能。本教程将介绍如何使用 Docker 在服务器上部署 GitLab。

1. 先决条件

  • 一台运行 CentOS 7 的服务器
  • 已安装 Docker 和 Docker Compose
  • 至少 4GB 内存,推荐 8GB 以上
  • 端口 80、443 和 22 未被占用

2. 拉取 GitLab 镜像

首先,确保你的 Docker 运行正常,然后使用以下命令拉取 GitLab 官方镜像:

sudo docker pull gitlab/gitlab-ce:latest

3. 创建 GitLab 配置目录

为了持久化 GitLab 数据,我们需要在主机上创建相应的目录:

mkdir -p /srv/gitlab/{config,data,logs}

4. 运行 GitLab 容器

使用 Docker 运行 GitLab 容器:

sudo docker run --detach \
  --hostname gitlab.example.com \
  --publish 80:80 --publish 443:443 --publish 22:22 \
  --name gitlab \
  --restart always \
  --volume /srv/gitlab/config:/etc/gitlab \
  --volume /srv/gitlab/data:/var/opt/gitlab \
  --volume /srv/gitlab/logs:/var/log/gitlab \
  gitlab/gitlab-ce:latest

请将 gitlab.example.com 替换为你的实际域名。

5. 配置 GitLab

等待几分钟后,GitLab 将会启动。你可以通过 http://你的服务器IP 访问 GitLab。

初次访问时,GitLab 会要求你设置管理员密码,设置完成后即可使用 root 用户登录。

6. 配置 SMTP 发送邮件(可选)

编辑 GitLab 配置文件:

sudo vi /srv/gitlab/config/gitlab.rb

找到并修改 SMTP 设置,例如使用 Gmail:

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.gmail.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "your-email@gmail.com"
gitlab_rails['smtp_password'] = "your-email-password"
gitlab_rails['smtp_domain'] = "gmail.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true

保存后执行以下命令使配置生效:

sudo docker restart gitlab

7. 备份与恢复

备份 GitLab 数据

sudo docker exec -t gitlab gitlab-backup create

备份文件将存储在 /srv/gitlab/data/backups/ 目录下。

恢复 GitLab 数据

sudo docker exec -t gitlab gitlab-backup restore BACKUP=备份文件名

8. 停止与删除 GitLab

如果你需要停止 GitLab,可以运行:

sudo docker stop gitlab

删除容器:

sudo docker rm gitlab

删除所有数据:

sudo rm -rf /srv/gitlab

9. 总结

使用 Docker 部署 GitLab 具有快速、便捷、易于管理的特点。你可以通过修改 gitlab.rb 配置文件来自定义 GitLab 功能,同时可以结合 Docker Compose 进一步优化部署。

如果你在部署过程中遇到问题,欢迎在评论区讨论!

0

评论 (0)

取消