选择版本
历史版本:GitLab releases
安装版本:https://<your.domain.name>/help
目前(2019/07/10)官方强烈建议下载并安装 GitLab 企业版,即使不确定将来是否会购买 GitLab 企业版许可证。因为,即使不购买许可证,试用期过后会自动退回到社区版,并且可以使用社区版的所有功能,同时还会带来两个好处:
- 可以使用企业版的功能。即使不满意,试用期后会自动退回社区版;
- 如果试用期后退回到社区版,想要在升级到企业版会非常方便。但是如果直接安装社区版,想要再升级到企业版,可能需要停机,还会麻烦些;
要想用企业版就要购买许可证,否则就只能用 MIT 许可证下的功能。如果你没有购买专有许可能,试用期过后,与社区版就没有什么区别;
部署方式
镜像仓库 https://hub.docker.com/r/gitlab/gitlab-ce
GitLab CE 8.16.5 064dab1
Community Edition or Enterprise Edition
How to check the version of GitLab?
# 06/13/2022 我们是从 GitLab Community Edition 8.16.5 064dab1 开始使用的。相关的部署过程已经时效,所以我们删除就版本的部署文档;
with Helm Chart | on Kubernetes | 废弃
https://docs.gitlab.com/charts/
helm repo add gitlab https://charts.gitlab.io/ helm repo update gitlab helm pull gitlab/gitlab helm show values ./gitlab-9.0.0.tgz > gitlab-9.0.0.tgz.helm-values.yaml vim gitlab-9.0.0.tgz.helm-values.yaml ... global.edition: ce ... global.hosts.domain: ... global.ingress: ... global.minio.enabled: false ... global.appConfig.lfs.enabled: false ... global.appConfig.artifacts: false ... global.appConfig.uploads: false ... global.appConfig.packages: false ... installCertmanager: false ... prometheus: false ... gitlab-runner: false ... nginx-ingress.enabled: false ... nginx-ingress-geo.enabled: false ...
# 05/17/2025 我们放弃通过 Helm Chart 来部署 GitLab 服务,其主要原因在于投入不符合预期产出。
服务升级
GitLab release and maintenance policy | https://docs.gitlab.com/ee/policy/maintenance.html
GitLab Release | https://about.gitlab.com/releases/categories/releases/
官方提供升级路线工具:https://gitlab-com.gitlab.io/support/toolbox/upgrade-path/
针对我们升级经验的记录:
1)升级过程:我们将不再记录详细的升级过程,升级过程的具体过程建议参考官方文档;
2)升级问题:但是,我们将记录升级过程中遇到的问题,以及相关的问题解决办法;
GitLab CE on CentOS 7
# 12/24/2018 目前,分为社区版(CE)和企业版(EE),但是官网找了一圈都没有看见一个关于社区版(CE)的安装手册;
原本想着把 EE 安装手册里的“ee”换成“ce”,但是觉得不规范、不标准。所以就四处找文章,但是看了一圈,大家也没说 CE 的手册在哪里;
就这么着把。本着“首先,能跑起来就行”的原则,开始进行安装;
# 12/24/2018 算是找到了一点相关的内容 Manually Downloading and Installing a GitLab Package。后来我有找到了Community Edition or Enterprise Edition,发现了 CE 版本的安装秘密 GitLab Installation,对比后发现 CE 和 EE 安装手册的 URL 地址的唯一差别就是 URL 中多了个“?version=ce”参数;
第一步、安装必要依赖
在 CentOS 7.x 中:安装 GitLab 所依赖的软件包;设置系统防火墙允许 HTTP 和 SSH 服务;
接下来,安装 Postfix 以发送通知电子邮件。如果要使用其他解决方案发送电子邮件,请跳过此步骤,并在安装 GitLab 后配置外部 SMTP 服务器:
# yum install postfix # systemctl enable postfix # systemctl start postfix
在 Postfix 安装期间,可能会出现配置界面。选择“Internet Site”并按「Enter」键。为“mail name”使用服务器的外部 DNS,然后按「Enter」键。如果出现其他界面,请继续按 Enter 键接受默认值;
第二步、添加仓库并安装
添加 GitLab 官方仓库:
# curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | bash
接下来,安装 GitLab 包;
将下面的 `http://gitlab.example.com’ 更改为你的 GitLab 站点域名。安装将自动配置,并使用该 URL 的作为 GitLab 的访问地址;
# EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ee
HTTPS 在安装后需要其他配置;
第三步、访问并登录
首次访问时,会将被重定向到密码重置屏幕。提供初始管理员帐户的密码,然后将被重定向回登录屏幕。使用默认帐户的用户名 root 登录;
有关安装和配置的详细说明,请参阅「官方文档」;
关注官方的资讯
这里主要还是关注官方的 BUG 和安全更新。如果不加入,则不会收到安全警报;
常见问题
默认用户名密码
Installing GitLab with Omnibus packages | GitLab
Username: admin@example.com
Password: /etc/gitlab/initial_root_password
对于 Docker 部署,则在 ./config/initial_root_password 文件