Gitlab自動部署之一:阿里雲安裝Gitlab筆記

大猹子發表於2019-04-19

前言

公司前端大佬因為某些原因離職了,走的比較匆忙,自己之前一直很少接觸這方面的東西,一直都是一知半解。這兩天我一邊學,一邊動手搭建,同時記錄整個搭建過程。

這是一系列文章,從搭建 Gitlab 到 安裝、註冊Gitlab-runner 再到二者結合去部署一個簡單的專案,通過這幾篇文章,你將學會如何在 Gitlab 上自動化打包部署自己的專案。

系列文章一共有四篇,包括:

  1. 如何在阿里雲上安裝Gitlab
  2. 安裝GITLAB-RUNNER
  3. LINUX的免密登入
  4. 使用GITLAB-RUNNER部署GITLAB的專案

由於自己一直做的是前端,對於Linux我不算熟練,如有錯誤的地方,請大家指出。

原文地址:阿里雲安裝Gitlab筆記

前置工作

  1. 一臺阿里雲伺服器(2核4G以上)
  2. 配置伺服器入方向安全組規則,我這裡配置了8888埠(阿里雲安全組出方向預設允許所有訪問,所以不用配置)

配置入方向安全組

Step1:安裝和配置必要依賴項

訪問 Gitlab安裝地址,選擇對應系統的安裝方式,我的是 CentOS 7.6 故選擇 CentOS 7.X 的安裝方式。

如何檢視自己是什麼系統:

lsb_release -a
複製程式碼

在CentOS 7(以及RedHat/Oracle/Science Linux 7)上,使用下面的命令開啟系統防火牆中的HTTP和SSH訪問。

sudo yum install -y curl policycoreutils-python openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd
sudo firewall-cmd --permanent --add-service=http
sudo systemctl reload firewalld
複製程式碼

在執行 sudo firewall-cmd --permanent --add-service=http 時可能會遇到 FirewallD is not running 錯誤提示,意思是未執行防火牆。 使用以下命令開啟防火牆即可:

systemctl start firewalld.service
複製程式碼

接下來,安裝 Postfix 郵件通知服務。如果要使用其他解決方案,可跳過此步,並在安裝GitLab之後配置外部SMTP伺服器。

sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
複製程式碼

這一步可能會遇到一個報錯 Job for postfix.service failed because the control process exited with error code. See "systemctl status postfix.service" and "journalctl -xe" for details. 解決方法是修改 /etc/postfix/main.cf 的配置,使用:

vi /etc/postfix/main.cf
複製程式碼

進入編輯 'main.cf',按 I 進入修改:

inet_interfaces = all
inet_protocols = ipv4 // 或 all
複製程式碼

修改完成後 依次按 Esc:wq,回車儲存修改,之後重啟服務。

sudo systemctl restart postfix
複製程式碼

Step2:新增GitLab包儲存庫並安裝該包

設定防火牆:

# 開啟 8888 埠
firewall-cmd --zone=public --add-port=8888/tcp --permanent
# 重啟防火牆
systemctl restart firewalld
複製程式碼

新增GitLab包的倉庫

curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
複製程式碼

接下來,安裝Gitlab包:

sudo EXTERNAL_URL="https://gitlab.example.com" yum install -y gitlab-ee
複製程式碼

將https://gitlab.example.com更改為您要訪問GitLab例項的URL。 安裝將自動配置並啟動該URL的GitLab。

我這裡沒有域名就直接使用 IP + 埠號的形式:

sudo EXTERNAL_URL="xx.xx.xxx.xx:8888" yum install -y gitlab-ee
複製程式碼

然後等待安裝

如果安裝完之後要修改訪問的域名或者 IP,則需修改 /etc/gitlab/gitlab.rb 檔案中的 external_url 一項,修改方法與上面修改 /etc/postfix/main.cf 的一樣。

之後重新配置服務

gitlab-ctl reconfigure
複製程式碼

Step3:登入

經過上面,的安裝與設定,就可以訪問域名或者IP了。

開啟xx.xx.xxx.xx:8888,需要設定root帳號的密碼,之後即可使用root帳號登入。

這裡忘記截圖了,就附上使用者設定的一張截圖吧

設定

附:

Gitlab常用命令:

//啟動
sudo gitlab-ctl start
//停止
sudo gitlab-ctl stop
//重啟
sudo gitlab-ctl restart
//檢視狀態
sudo gitlab-ctl status
//使更改配置生效
sudo gitlab-ctl reconfigure

複製程式碼

參考:

GitLab Installation
阿里雲 GitLab 折騰筆記
CentOS下yum命令出現Loaded plugins: fastestmirror
Failed to set locale, defaulting to C解決

相關文章