如何在Ubuntu 18.04上安裝和配置GitLab
GitLab是一個使用Ruby編寫的基於Web的開源Git存儲庫管理器,包括Wiki,問題管理,代碼審查,監視以及持續集成和部署。 它使開發人員可以創建,查看和部署他們的項目。
共有三種不同版本的GitLab,分別是Community Edition(CE),Enterprise Edition(EE)和GitLab託管的版本。
如果您想離開GitHub,GitLab是第一選擇。 它可以從包括GitHub在內的不同來源導入項目和問題,這使遷移過程輕鬆自如。 GitLab界面經過精心設計,簡潔,直觀,並且在用戶體驗和功能方面接近GitHub。
根據所需的用例,有幾種安裝GitLab的方法。 本教程介紹了使用Omnibus軟件包在Ubuntu 18.04系統上安裝和配置GitLab(CE)所需的步驟。
先決條件
本教程假定您具有全新的Ubuntu 18.04安裝。 根據GitLab要求頁面,建議將服務器用於以下用途:
- 至少4GB的RAM內存。
- 2個CPU內核。
- 至少2GB的交換空間。
- (可選)指向服務器IP地址的域或子域。
為了增加安全性,建議設置基本防火牆。 您可以按照我們的《如何在Ubuntu 18.04上使用UFW設置防火牆》指南中的步驟進行操作。
在開始本教程之前,請確保您以具有sudo特權的用戶身份登錄。
安裝必需的依賴項
刷新本地軟件包索引並使用以下命令安裝依賴項:
sudo apt update
sudo apt install curl openssh-server ca-certificates
為了使GitLab能夠發送通知電子郵件,您可以安裝並使用Postfix或使用某些事務性郵件服務,例如SendGrid,MailChimp,MailGun或SES,在這種情況下,您可以跳過以下步驟並進行配置 [GitLab SMTP settings] (https://docs.gitlab.com/omnibus/settings/smtp.html)完成安裝後。
運行以下命令在您的Ubuntu服務器上安裝Postfix:
debconf-set-selections <<< "postfix postfix/mailname string $(hostname -f)"
debconf-set-selections <<< "postfix postfix/main_mailer_type string 'Internet Site'"
sudo apt install postfix
有關如何設置自己的郵件服務器的更多詳細信息,請參閱本系列。
安裝GitLab#
GitLab安裝是一個非常簡單的過程。 我們將使用以下工具安裝GitLab CE軟件包 apt
包裹經理。
首先使用以下curl命令將GitLab存儲庫添加到系統源列表中:
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
啟用存儲庫後,通過運行以下命令安裝GitLab軟件包。
sudo apt install gitlab-ce
安裝過程可能需要一段時間,成功安裝後,您將看到以下輸出:
Thank you for installing GitLab!
調整防火牆規則
先決條件部分中鏈接了有關設置基本防火牆的指南。 為了能夠訪問GitLab界面,我們需要打開端口 80
和 443
:
sudo ufw allow OpenSSH
sudo ufw allow http
sudo ufw allow https
要確保所需的端口已打開,您可以使用以下方法檢查防火牆的狀態:
sudo ufw status
Status: active
To Action From
-- ------ ----
80/tcp ALLOW Anywhere
443/tcp ALLOW Anywhere
OpenSSH ALLOW Anywhere
80/tcp (v6) ALLOW Anywhere (v6)
443/tcp (v6) ALLOW Anywhere (v6)
OpenSSH (v6) ALLOW Anywhere (v6)
設置GitLab URL#
在訪問GitLab Web界面之前,我們需要設置可訪問GitLab的URL。 打開Gitlab的配置文件並進行以下更改:
sudo nano /etc/gitlab/gitlab.rb
在配置文件頂部附近,您會看到一行以 external_url
。 更改值以匹配您的域/子域或IP地址。 如果您有域名使用 https
如果您想通過服務器IP地址訪問GitLab界面,請使用 http
。
/etc/gitlab/gitlab.rb
external_url 'https://gitlab.example.com'
下一步搜索“ Let’s Encrypt集成”,取消注釋行開頭 letsencrypt['enable']
並將其設置為true。 (可選)如果您想接收來自Let’s Encrypt的有關您的域的電子郵件,請取消注釋以 letsencrypt['contact_emails']
並添加您的電子郵件地址。
如果您設定 external_url
到IP地址,則不要啟用“讓我們加密”集成。
/etc/gitlab/gitlab.rb
letsencrypt['enable'] = true
letsencrypt['contact_emails'] = ['[email protected]'] # This should be an array of email addresses to add as contacts
最後,保存並關閉文件,然後運行以下命令重新配置Gitlab:
sudo gitlab-ctl reconfigure
該命令將重新配置您的GitLab設置,並生成免費的“讓我們加密SSL”證書。
通過Web界面配置GitLab
現在,您已經配置了GitLab URL,您可以通過GitLab Web界面從初始配置開始。
啟動您的網絡瀏覽器並導航至:
https://your_gitlab_domain_or_server_IP.com
1.設置管理帳戶密碼#
首次訪問網絡界面時,系統會提示您設置管理帳戶的密碼。
輸入安全密碼,然後點擊 Change your password
完成後按一下按鈕。
您將被重定向到登錄頁面:
默認的管理帳戶用戶名是 root
。 在本教程的後面,我們將向您展示如何更改用戶名。
- 用戶名:root
- 密碼: [the password you have set]
輸入登錄憑據後,點擊 Sign in
按鈕,您將轉到GitLab歡迎頁面。
2.編輯用戶個人資料#
您要做的第一件事是編輯用戶個人資料。 單擊用戶頭像(右上角),然後從下拉菜單中選擇 Settings
:
在這裡,您可以更改您的姓名,電子郵件以及其他個人資料信息和設置。 根據您的喜好進行更改。
完成後,點擊 Update Profile settings
按鈕,不久您將收到一封確認電子郵件,其中包含您提供的地址。 要確認您的帳戶,請按照電子郵件中提供的說明進行操作。
3.更改用戶名
要訪問個人資料頁面,請點擊 Account
左側垂直導航菜單中的鏈接。
如您所知,第一個管理帳戶的默認用戶名是 root
。 要更改它,只需鍵入新的用戶名,然後單擊 Update username
按鈕。
在此屏幕上,您還可以啟用兩因素身份驗證。
下次登錄到GitLab儀錶板時,需要輸入新的用戶名。
4.添加SSH密鑰#
為了能夠將本地git更改推送到GitLab服務器,您可以將SSH公鑰添加到GitLab帳戶。
如果您已經在本地系統上創建了SSH密鑰對,則可以通過鍵入以下內容顯示公鑰:
cat ~/.ssh/id_rsa.pub
輸出應類似於以下內容:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDd/mnMzHwjUzK8g3ldfsfRpJuC16mhWamaXRk8ySQrD/dzpbRLfDnZsLxCzRoq+ZzFHGwcQlJergtergdHGRrO8FE5jl3IWRRp+mP12qYw== [email protected]
如果上面的命令打印出來 No such file or directory
這意味着您的計算機上沒有生成SSH密鑰對。
要生成新的SSH密鑰對,請使用以下命令:
ssh-keygen -t rsa -b 4096 -C "[email protected]"
複製cat命令的輸出,然後返回到GitLab的Web界面。 請點擊 SSH Keys
從左側垂直導航菜單中訪問SSH密鑰配置頁面。
在裡面 Key
textarea粘貼您先前從本地計算機複製的公共密鑰,設置一個描述性標題,然後單擊 Add key
按鈕:
現在,您無需提供GitLab帳戶憑據就可以從本地計算機上推送和提取項目更改。
結論#
本教程向您介紹了在Ubuntu 18.04上GitLab的安裝和配置。 您還學習了如何編輯配置文件設置,如何更改用戶名和添加SSH密鑰。 現在,您可以創建第一個項目並開始使用GitLab。
如有疑問,請在下面發表評論。
Ubuntu的git gitlab