佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > Ubuntu20.04安裝配置GitLab的方法步驟

Ubuntu20.04安裝配置GitLab的方法步驟

熱門標(biāo)簽:阿里云 使用U盤裝系統(tǒng) 百度競價點擊價格的計算公式 網(wǎng)站建設(shè) 硅谷的囚徒呼叫中心 智能手機 檢查注冊表項 美圖手機

介紹

GitLab CE或Community Edition是一個開源應(yīng)用程序,主要用于托管Git存儲庫,以及其他與開發(fā)相關(guān)的功能,如問題跟蹤。它旨在使用您自己的基礎(chǔ)架構(gòu)進行托管,并為您的開發(fā)團隊提供部署內(nèi)部存儲庫的靈活性,與用戶交互的公共方式,或者為貢獻者提供托管自己項目的方法。

GitLab項目使用簡單的安裝機制在您自己的硬件上設(shè)置GitLab實例變得相對簡單。在本指南中,我們將介紹如何在阿里云Ubuntu 20.04服務(wù)器上安裝和配置GitLab。

前提條件

部署GitLab的實例要求至少使用2個vCPU和4GiB的內(nèi)存,本示例中使用的相關(guān)資源版本如下。

  • 實例規(guī)格:ECS共享型 s6 2核4G1M帶寬
  • 操作系統(tǒng):Ubuntu 20.04

已添加如下表所示的安全組規(guī)則。

方向 協(xié)議/應(yīng)用 端口/范圍 源地址
入方向 HTTP(80) 80 0.0.0.0/0

安裝

第1步 - 安裝依賴項

在我們自己安裝GitLab之前,安裝一些在安裝過程中持續(xù)使用的軟件非常重要。幸運的是,可以從Ubuntu的默認包存儲庫輕松安裝所有必需的軟件。

由于這是我們第一次apt在此會話期間使用,我們可以刷新本地包索引,然后鍵入以下內(nèi)容來安裝依賴項:

sudo apt update
sudo apt install ca-certificates curl openssh-server postfix

您可能已經(jīng)安裝了一些此軟件。對于postfix的安裝,請在出現(xiàn)提示時選擇“ Internet站點”。在下一個屏幕上,輸入服務(wù)器的域名以配置系統(tǒng)發(fā)送郵件的方式。

第2步 - 安裝GitLab

cd /tmp
curl -LO https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh

您可以隨意檢查下載的腳本,以確保您對所需的操作感到滿意。您還可以在此處找到該腳本的托管版本:

less /tmp/script.deb.sh

一旦您對腳本的安全性感到滿意,請運行安裝程序:

sudo bash /tmp/script.deb.sh

該腳本將設(shè)置您的服務(wù)器以使用GitLab維護的存儲庫。這使您可以使用與其他系統(tǒng)軟件包相同的軟件包管理工具來管理GitLab。完成后,您可以使用以下apt命令安裝實際的GitLab應(yīng)用程序:

sudo apt install gitlab-ce

這將在您的系統(tǒng)上安裝必要的組件。

注意事項

在安裝GitLab應(yīng)用程序中如果報以下錯誤,我們可以配置國內(nèi)加速鏡像。

報錯信息:

# apt-get install gitlab-ce
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package gitlab-ce

修改安裝腳本

sudo vim /etc/apt/sources.list.d/gitlab_gitlab-ce.list

OLD

deb https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ focal main
deb-src https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ focal main

NEW

deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu focal main
deb-src https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu focal main

再次執(zhí)行

sudo apt update
sudo apt install gitlab-ce

參考鏈接:https://gitlab.com/gitlab-org/gitlab-foss/-/issues/2370

第3步 - 調(diào)整防火墻規(guī)則

在配置GitLab之前,您需要確保防火墻規(guī)則足夠?qū)捤梢栽试SWeb流量。如果您遵循先決條件中鏈接的指南,則將啟用ufw防火墻。

鍵入以下內(nèi)容查看活動防火墻的當(dāng)前狀態(tài):

sudo ufw status
Status: active

To             Action   From
--             ------   ----
80             ALLOW    Anywhere         
22             ALLOW    Anywhere         
80 (v6)          ALLOW    Anywhere (v6)       
22 (v6)          ALLOW    Anywhere (v6)  

如您所見,當(dāng)前規(guī)則允許SSH流量通過,但對其他服務(wù)的訪問受到限制。由于GitLab是一個Web應(yīng)用程序,我們應(yīng)該允許HTTP訪問。因為我們將利用GitLab從Let's Encrypt請求和啟用免費TLS / SSL證書的功能,所以我們也允許HTTPS訪問。

/etc/services文件中提供了HTTP和HTTPS的端口映射協(xié)議,因此我們可以按名稱允許該流量。如果您尚未啟用OpenSSH流量,則現(xiàn)在也應(yīng)該允許該流量:

sudo ufw allow http
sudo ufw allow https
sudo ufw allow OpenSSH

再次檢查ufw status

Status: active

To             Action   From
--             ------   ----
80             ALLOW    Anywhere         
22             ALLOW    Anywhere         
80/tcp           ALLOW    Anywhere         
443/tcp          ALLOW    Anywhere         
OpenSSH          ALLOW    Anywhere         
80 (v6)          ALLOW    Anywhere (v6)       
22 (v6)          ALLOW    Anywhere (v6)       
80/tcp (v6)        ALLOW    Anywhere (v6)       
443/tcp (v6)        ALLOW    Anywhere (v6)       
OpenSSH (v6)        ALLOW    Anywhere (v6)  

第4步 - 編輯GitLab配置文件

在使用該應(yīng)用程序之前,需要更新配置文件并運行重新配置命令。首先,打開Gitlab的配置文件:

sudo vim /etc/gitlab/gitlab.rb

頂部附近是external_url配置線。更新它以匹配您的域。更改httphttps以便GitLab會自動將用戶重定向到受Let's加密證書保護的站點:

## GitLab URL
##! URL on which GitLab will be reachable.
##! For more details on configuring external_url see:
##! https://docs.gitlab.com/omnibus/settings/configuration.html#configuring-the-external-url-for-gitlab
##!
##! Note: During installation/upgrades, the value of the environment variable
##! EXTERNAL_URL will be used to populate/replace this value.
##! On AWS EC2 instances, we also attempt to fetch the public hostname/IP
##! address from AWS. For more details, see:
##! https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-data-retrieval.html
external_url 'https://example.com' // 此處修改為您的域名或ip地址

接下來,查找letsencrypt['contact_emails']設(shè)置。此設(shè)置定義了一個電子郵件地址列表,如果您的域存在問題,Let的加密項目可以用來與您聯(lián)系。取消注釋并填寫此內(nèi)容是一個好主意,以便您知道任何問題:

letsencrypt['contact_emails'] = ['sammy@example.com'] // 此處修改為您的郵箱地址

保存并關(guān)閉文件。運行以下命令重新配置Gitlab:

sudo gitlab-ctl reconfigure

這將使用它可以找到的有關(guān)您的服務(wù)器的信息初始化GitLab。這是一個完全自動化的過程,因此您不必回答任何提示。該過程還將為您的域配置Let's Encrypt證書。

sudo gitlab-ctl restart

重啟 GitLab。

附上GitLab常用命令:

常用命令 說明
sudo gitlab-ctl reconfigure 重新加載配置,每次修改/etc/gitlab/gitlab.rb文件之后執(zhí)行
sudo gitlab-ctl status 查看 GitLab 狀態(tài)
sudo gitlab-ctl start 啟動 GitLab
sudo gitlab-ctl stop 停止 GitLab
sudo gitlab-ctl restart 重啟 GitLab
sudo gitlab-ctl tail 查看所有日志
sudo gitlab-ctl tail nginx/gitlab_acces.log 查看 nginx 訪問日志
sudo gitlab-ctl tail postgresql 查看 postgresql 日志

第5步 - 通過Web界面執(zhí)行初始配置

在允許GitLab運行和訪問的情況下,我們可以通過Web界面執(zhí)行應(yīng)用程序的一些初始配置。

第5步 - 首次登錄

在Web瀏覽器中訪問GitLab服務(wù)器的域名:

https://example.com // 您external_url配置的地址

在您第一次訪問時,您應(yīng)該看到為管理帳戶設(shè)置密碼的初始提示,修改下root管理員密碼之后就可以正常使用了。

第6步 - 結(jié)論

您現(xiàn)在應(yīng)該在自己的服務(wù)器上托管一個正常工作的GitLab實例。您可以開始導(dǎo)入或創(chuàng)建新項目,并為您的團隊配置適當(dāng)?shù)脑L問級別。GitLab會定期添加功能并對其平臺進行更新,因此請務(wù)必查看項目主頁以及時了解最新任何改進或重要通知。

GitLab開機自動啟動

設(shè)置GitLab開機自啟動命令為

sudo systemctl enable gitlab-runsvdir.service

禁止GitLab開機自啟動命令為

sudo systemctl disable gitlab-runsvdir.service

GitLab郵箱配置

以下用QQ郵箱為例

第1步 - 開啟qq郵箱的POP3/SMTP服務(wù)并保存好授權(quán)碼

這一步在qq郵箱的設(shè)置 -> 賬戶中

點擊開啟按照提示步驟操作會獲得相應(yīng)的授權(quán)碼(注意:記住授權(quán)碼一會要用)

第2步 - 修改gitlab的配置文件

sudo vim /etc/gitlab/gitlab.rb
#配置郵箱來源, 與展示的名稱
gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = '您的qq郵箱地址'
gitlab_rails['gitlab_email_display_name'] = '您的郵箱顯示名稱'

#smtp配置
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "您的qq郵箱地址"
gitlab_rails['smtp_password'] = "您的授權(quán)碼"
gitlab_rails['smtp_domain'] = "smtp.qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true

第3步 - 重新加載配置

sudo gitlab-ctl reconfigure

第4步 - 發(fā)送測試郵件

sudo gitlab-rails console

#進入控制臺,然后發(fā)送郵件
Notify.test_email('測試郵箱地址', '郵件標(biāo)題', '郵件正文').deliver_now

進入郵箱查看是否收到郵件。

GitLab修改端口

GitLab默認端口是80,如果我們想更改成9091端口,則需要修改GitLab配置文件。

sudo vim /etc/gitlab/gitlab.rb

修改如下配置

nginx['listen_port'] = 9091 // GitLab端口,默認80端口
unicorn['port'] = 9092 // 可不修改,默認監(jiān)聽8080端口

重新加載配置

sudo gitlab-ctl reconfigure

即可修改成功。

GitLab Pages設(shè)置

修改gitlab的配置文件

sudo vim /etc/gitlab/gitlab.rb

修改如下配置

gitlab_pages[‘enable'] = true; 開啟 Pages 服務(wù)
pages_external_url ‘您的GitLab Pages域名地址'; 替換成你自己的域名
gitlab_pages[‘inplace_chroot'] = true; 以Docker container 方式運行的 Gitlab 必須開啟此項
pages_nginx[‘enable'] = true; 開啟 Pages 服務(wù)的 vhost,該項開啟后將會在 /var/opt/gitlab/nginx/conf 目錄下生成獨立的名為 gitlab-pages.conf Nginx 配置文件。
gitlab_pages['access_control'] = true 開啟 Pages 訪問控制。

重新加載配置

sudo gitlab-ctl reconfigure

GitLab Runner配置

第1步 - 安裝

參考官網(wǎng)安裝流程:https://docs.gitlab.com/runner/install/linux-repository.html

第2步 - 注冊

參考官網(wǎng)注冊流程:https://docs.gitlab.com/runner/register/

參考鏈接

如何在Ubuntu 18.04上安裝和配置GitLab - 云+社區(qū) - 騰訊云

Ubuntu 簡單安裝和配置 GitLab - 田園里的蟋蟀 - 博客園

在Ubuntu18.04下安裝gitlab國內(nèi)鏡像加速_Linux教程_云網(wǎng)牛站

Ubuntu 18.04更換國內(nèi)高速源_Linux教程_云網(wǎng)牛站

gitlab修改默認端口 - 云+社區(qū) - 騰訊云

Ununtu16.04搭建GitLab服務(wù)器教程 - 知乎

gitlab-runner | 鏡像站使用幫助 | 清華大學(xué)開源軟件鏡像站 | Tsinghua Open Source Mirror

開啟 Gitlab Pages 服務(wù) - George

Download and install GitLab | GitLab

到此這篇關(guān)于Ubuntu20.04安裝配置GitLab的方法步驟的文章就介紹到這了,更多相關(guān)Ubuntu20.04安裝配置GitLab內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

標(biāo)簽:懷化 湖北 煙臺 通遼 賀州 山南 湘潭 黃山

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Ubuntu20.04安裝配置GitLab的方法步驟》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    磴口县| 扎鲁特旗| 眉山市| 微山县| 金乡县| 汉中市| 偏关县| 海淀区| 岫岩| 恩平市| 萍乡市| 中阳县| 白银市| 鄄城县| 定州市| 宜春市| 麻江县| 东宁县| 稻城县| 尚义县| 日照市| 玉田县| 周口市| 龙江县| 腾冲县| 故城县| 五河县| 通渭县| 勐海县| 蒙山县| 庐江县| 恩施市| 淮阳县| 鄂伦春自治旗| 兰溪市| 澎湖县| 灵山县| 滦南县| 成武县| 乐至县| 海林市|