您的 GitLab 服务器上安装什么?
- GitLab Community Edition,来自官方 Omnibus 软件包,安装时使用的是最新版本
- 由 GitLab 自己获取并续期的 HTTPS 证书,对应基于您 IP 的 sslip.io 名称
- 一个 root 管理员账户,密码在您的面板中
- 针对内存受限的设置:2 个 Puma 工作进程,Sidekiq 并发数 10,关闭 Prometheus 监控
- 新账户注册已关闭,时区为 Europe/Istanbul
- 设置位于 /etc/gitlab/gitlab.rb,git 通过 22 端口的 SSH 使用
- 对外只开放 22、80 和 443 端口
GitLab 需要多大的配置?
GitLab 的要求页面以 8 vCPU 和 16 GB RAM 作为单台服务器的基准,并说明内存受限的部署至少需要 8 GB。本安装就从这个较低的下限起步,即 8 GB 和 4 个 CPU。经验上,小团队用 8 GB,活跃的团队用 16 GB 并配更多 CPU。官方文档要求应用本身 40 GB,PostgreSQL 5 到 12 GB,另外还要为您所有的仓库留出空间。
| 用途 | 配置 | 价格 | 选择 |
|---|---|---|---|
| 几个人 | 8 GB RAM · 4 vCore · 120 GB NVMe | $13.62/月 | |
| 小团队 | 16 GB RAM · 8 vCore · 200 GB NVMe | $25.15/月 | |
| 公司 | 32 GB RAM · 12 vCore · 360 GB NVMe | $46.22/月 |
适合谁?
- 想在一个产品里完成仓库、议题、代码审查和 CI/CD 的开发团队
- 需要把代码和 CI 历史保存在自己服务器上的组织
- 已经熟悉 GitLab、想拥有自己实例的团队
- 希望 GitLab 运行在伊斯坦布尔的土耳其团队
下单之后会发生什么?
- 设定配置并完成付款。
- 服务器启动后,GitLab 会自行安装。在“概览”标签页上,等待“应用”一行显示 GitLab 已就绪。
- 打开“网站地址”链接,用“登录名”(root)和“密码”两行中的值登录。
- 在管理员区域的 Admin, Settings, General 页面中,先展开 New user account restrictions 一栏,再取消勾选 Allow new user accounts 这个选项。
- 用 New project 创建第一个项目,并在个人资料中添加您的 SSH 密钥。
- 要使用 CI/CD,请在另一台服务器上安装 GitLab Runner,并把它注册到您的项目。
每台服务器都包含
- 价格含每日备份
- 不限流量
- 完整 root 权限
- 之后可升级或降配 RAM 和 CPU,并扩大磁盘
- 位置:Istanbul · IST-1。
须知
- 开放注册是 GitLab 的默认设置,本安装把它关闭了。若要开启,请点击右上角的 Admin,然后进入 Settings, General, New user account restrictions。
- 没有安装 GitLab Runner。官方文档说应把它安装在与 GitLab 实例分开的机器上。
- GitLab 占用大量内存。其文档建议尽可能禁用交换空间,所以本安装没有添加。
- 本安装不会设置发信。请把 SMTP 信息添加到 /etc/gitlab/gitlab.rb。每次修改设置后,运行 gitlab-ctl reconfigure。
- 更新由您自己负责。更新通过 apt 进行,而且不要跳过官方升级路径上要求的中间停靠版本。请先备份。
GitLab 常见问题
GitLab 需要多少 RAM?
GitLab 的要求页面以 16 GB 作为单台服务器的基准,并说明内存受限的部署至少需要 8 GB。本安装精简了设置,从 8 GB 起步。经验上,8 GB 适合小团队,您可以在面板中升级配置。
如何登录我的 GitLab 服务器?
打开面板“概览”标签页上的“网站地址”。登录名是 root,密码在“密码”一行。GitLab 在安装时会获取 Let's Encrypt 证书,所以该地址通过 HTTPS 打开。
GitLab Runner 可以和 GitLab 运行在同一台服务器上吗?
可以安装在那里,但出于安全和性能的原因,官方文档要求使用单独的机器。为 Runner 另备一台小型服务器,也不会占用 GitLab 的内存。本安装不含 Runner,需要您自己添加。
如何通过 SSH 对 GitLab 使用 git?
在个人资料中添加您的 SSH 密钥。Git 使用服务器的 22 端口:git clone git@ADDRESS:group/project.git。这里的 ADDRESS 是网站地址中的 sslip.io 名称,或者您连接的域名。
如何把自己的域名连接到 GitLab?
把 A 记录指向您的服务器,把新的 https 地址写入 /etc/gitlab/gitlab.rb 的 external_url 一行,然后运行 gitlab-ctl reconfigure。GitLab 会自动为新名称获取 Let's Encrypt 证书。
GitLab Community Edition 这个版本是要付费的吗?
不是。安装的版本是 MIT 许可证的 Community Edition,不需要许可证密钥。付费层级的功能不在这个软件包里,GitLab 说明之后若要升级到付费层级,需要先转换软件包。