背景:由于工作项目的需要,要在服务器上部署一套8.8.5版本的Gitlab,查了下该版本发布于16~17年,已经属于非常老的版本,期间Gitlab发布的版本已经产生了系统性的更新,为了测试Gitlab和Gitlab4j相关接口的调用和版本支持情况,决定在自己的服务器上部署一套用以测试API的正常调用。
由于该版本较老,且官方不断发布新版本,官方源的docker镜像已经被删除,因此通过docker部署的方式行不通,考虑通过软件包的形式下载安装:
1. 进入gitlab的软件包下载网站:gitlab/gitlab-ce - Packages · packages.gitlab.com
在上方输入版本过滤条件,我这里输入8.8.5,点击右侧的Search,出现如下列表,选择自己系统对应的版本,我这里选择第一个ubuntu的.deb格式,点击进入
2. 进入后,先复制右侧最上面的curl脚本,将gitlab库添加到系统中;然后尝试使用apt的安装命令:
sudo apt-get install gitlab-ce=8.8.5-ce.1
如果可以下载安装成功,直接跳到第四步;若下载失败,则进入第三步进行手动的下载安装(wget方式)
3. 手动安装:
- 在服务器中mkdir创建一个文件夹,用于保存下载文件;
- cd进入该文件夹后,使用上图右侧最下方的wget命令手动下载软件包
- 等待下载完成后,使用命令解压并安装:
sudo dpkg -i gitlab-ce_8.8.5-ce.1_amd64.deb,等待指令结束,安装完成; - 注意:如果上述wget也无法下载,可以换个时间多尝试几次,不推荐换用国内的镜像源,因为老版本的安装包国内镜像源中大概率没有;若尝试多次后仍无法下载,则使用浏览器下载后,使用
ftp工具将软件包上传到服务器,再进行手动解压安装,命令使用同上的dpkg
4. 相关配置:
-
sudo vim /etc/gitlab/gitlab.rb进入gitlab的配置文件,设置如下内容
external_url '<http://your_domain_or_ip'> # 输入你的服务器地址
gitlab_rails['db_adapter'] = "postgresql" # 指定数据库
gitlab_rails['db_encoding'] = "utf8" # 编码格式
5. 使配置生效:
-
sudo gitlab-ctl reconfigure# 重置配置项
6. 启动gitlab:
-
sudo gitlab-rake gitlab:setup# 初始化gitlab, 会提示重置root密码 -
sudo gitlab-ctl start# 启动gitlab程序 -
sudo gitlab-ctl status# 检查gitlab运行状态, 应该所有进程都为run
到此为止,运行start启动命令后,即可在浏览器中输入服务器的IP进入Gitlab主界面(可能需要加端口80)
若有需要,可用如下命令设置防火墙:
-
sudo ufw allow http -
sudo ufw allow https -
sudo ufw allow OpenSSH
如果初始页面可以正常访问,但无法登录和注册,报错500,则大概率是数据库的问题,将在下一篇文章中解答。
喜欢这篇文章烦请点赞收藏,是本账号的第一篇文章,你的认可是我创作的动力~