如何在 Ubuntu 上安裝 GitLab

GitLab 是一個開源平臺,提供了強(qiáng)大且功能豐富的解決方案,用于管理倉庫、問題、CI/CD 管道等。如果你是 Ubuntu 22.04 或 20.04 用戶,并且想要設(shè)置自己的 GitLab 實(shí)例來簡化你的 DevOps 工作流程,那么你來對地方了。
本分步指南將引導(dǎo)你完成 Ubuntu 22.04 或 20.04 上 GitLab 的安裝過程。GItlab 提供企業(yè)版(Gitlab EE)和社區(qū)版(Gitlab CE)。在這篇文章中,我們將介紹社區(qū)版。
先決條件:
- 運(yùn)行 Ubuntu 22.04 或 20.04 且具有 SSH 訪問權(quán)限的虛擬或?qū)S梅?wù)器。
- 靜態(tài)主機(jī)名(
gitlab.linuxtechi.net) - 具有管理員權(quán)限的 Sudo 用戶
- 2GB 內(nèi)存或更多
- 2 個或更多 vCPU
- 互聯(lián)網(wǎng)連接
1、更新系統(tǒng)包
讓我們首先更新軟件包列表并將任何現(xiàn)有軟件包升級到最新版本。
$ sudo apt update
$ sudo apt upgrade -y應(yīng)用更新后重新啟動系統(tǒng)。
$ sudo reboot2、安裝依賴項(xiàng)
GitLab 需要一些依賴項(xiàng)才能正常運(yùn)行。使用以下命令安裝它們:
$ sudo apt install -y curl openssh-server ca-certificates postfix在 postfix 安裝過程中,會出現(xiàn)一個配置窗口。選擇 “Internet Site”并輸入服務(wù)器的主機(jī)名作為郵件服務(wù)器名稱。這將允許 GitLab 發(fā)送電子郵件通知。

選擇 “Internet Site”,然后選擇 “OK”。

檢查系統(tǒng)的主機(jī)名并選擇 “OK”。
3、添加 GitLab Apt 存儲庫
現(xiàn)在,我們將添加 GitLab 倉庫,運(yùn)行以下 curl 命令。它將自動檢測你的 Ubuntu 版本并相應(yīng)地設(shè)置倉庫。
$ curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
4、安裝 Gitlab
運(yùn)行以下命令在你的 ubuntu 系統(tǒng)上自動安裝和配置 gitlab-ce,將服務(wù)器的主機(jī)名替換為你的設(shè)置,
$ sudo EXTERNAL_URL="http://gitlab.linuxtechi.net" apt install gitlab-ce上述命令成功執(zhí)行后,我們將得到如下輸出。


上面的輸出確認(rèn) GitLab 已成功安裝。gitlab web 界面的用戶名是 root,密碼存儲在 /etc/gitlab/initial_root_password。
注意:如果你的 ubuntu 系統(tǒng)上啟用了操作系統(tǒng)防火墻,那請允許 80 和 443 端口。
$ sudo ufw allow http
$ sudo ufw allow https5、訪問 GitLab Web 界面
安裝并配置 GitLab 后,打開 Web 瀏覽器并輸入服務(wù)器的 IP 地址或主機(jī)名。
http://<Server-IP-Address-or-Hostname>- 用戶名:
root - 密碼:從
/etc/gitlab/initial_root_password獲取密碼

點(diǎn)擊“登錄Sign in”。

很好,上面確認(rèn)我們已經(jīng)成功登錄 Gitlab Web 界面。
目前我們的 GitLab 服務(wù)器運(yùn)行在 http(80)協(xié)議上,如果你想為你的 GitLab 啟用 https,請參考以下步驟。
6、為 GitLab Web 界面設(shè)置 HTTPS
為提高安全性,可使用自簽名證書或 Let's Encrypt 為 GitLab 實(shí)例配置 HTTPS。Let's Encrypt 只適用于互聯(lián)網(wǎng)上有 A 記錄的公有域。但在本例中,我們使用的是私有域,因此將使用自簽名證書來確保 GitLab 的安全。
現(xiàn)在,讓我們創(chuàng)建以下文件夾并使用 openssl 命令生成自簽名證書:
$ sudo mkdir -p /etc/gitlab/ssl
$ sudo chmod 755 /etc/gitlab/ssl使用以下 openssl 命令生成私鑰:
$ sudo openssl genrsa -des3 -out /etc/gitlab/ssl/gitlab.linuxtechi.net.key 2048輸入密碼并記住它。
使用以下命令創(chuàng)建 CSR:
$ sudo openssl req -new -key /etc/gitlab/ssl/gitlab.linuxtechi.net.key -out /etc/gitlab/ssl/gitlab.linuxtechi.net.csr
從密鑰中刪除密碼串,依次執(zhí)行以下命令:
$ sudo cp -v /etc/gitlab/ssl/gitlab.linuxtechi.net.{key,original}
$ sudo openssl rsa -in /etc/gitlab/ssl/gitlab.linuxtechi.net.original -out /etc/gitlab/ssl/gitlab.linuxtechi.net.key
$ sudo rm -v /etc/gitlab/ssl/gitlab.linuxtechi.net.original創(chuàng)建證書文件:
$ sudo openssl x509 -req -days 1460 -in /etc/gitlab/ssl/gitlab.linuxtechi.net.csr -signkey /etc/gitlab/ssl/gitlab.linuxtechi.net.key -out /etc/gitlab/ssl/gitlab.linuxtechi.net.crt使用下面的 rm 命令刪除 CSR 文件:
$ sudo rm -v /etc/gitlab/ssl/gitlab.linuxtechi.net.csr設(shè)置密鑰和證書文件的權(quán)限:
$ sudo chmod 600 /etc/gitlab/ssl/gitlab.linuxtechi.net.key
$ sudo chmod 600 /etc/gitlab/ssl/gitlab.linuxtechi.net.crtGitlab 服務(wù)器的所有重要配置均由文件 /etc/gitlab/gitlab.rb 控制,因此編輯此文件,搜索 external_url 并添加 https://gitlab.linuxtechi.net。
$ sudo vi /etc/gitlab/gitlab.rb
----------------------------------------------------------
external_url 'https://gitlab.linuxtechi.net'
----------------------------------------------------------保存并退出文件,使用下面的命令重新配置 gitlab,以便其 Web 界面可以使用 HTTPS。
$ sudo gitlab-ctl reconfigure
成功執(zhí)行上述命令后,你的 GitLab 界面應(yīng)該可以通過 HTTPS 協(xié)議訪問,在我的例子中,URL 為:https://gitlab.linuxtechi.net/
當(dāng)你第一次訪問它時,它會說你的連接不安全,點(diǎn)擊“接受風(fēng)險并繼續(xù)”。

結(jié)論
恭喜! 你已在 Ubuntu 22.04 或 20.04 系統(tǒng)上成功安裝 GitLab。隨著 GitLab 的啟動和運(yùn)行,你現(xiàn)在可以創(chuàng)建倉庫,與你的團(tuán)隊協(xié)作,并通過 GitLab 令人印象深刻的功能增強(qiáng)你的開發(fā)工作流程。享受無縫版本控制、持續(xù)集成等,一切盡在你的掌控之中!

























