2018/05/20

建置 Gitlab Ci/CD :: 安裝 Gitlab

自從上一份工作用過CI/CD回不去了,
所以這次要來自己架一套Gitlab做CI/CD。

名詞解釋


  • Gitlab: 一套類似Github的軟體,可以在自己的設備建置如Github的私有服務。
  • CI: Continuous Integration 持續整合,持續的驗證軟體是否正確及產生分析報告等。
  • CD: Continuous Delivery 持續部屬,將驗證完成的軟體自動化發佈到正式伺服器。
  • Deployer: 一套PHP的部屬工具,方便做部屬時要做的指令與環境等。https://deployer.org/
  • Laravel: PHP Framework 也是一套用過就回不去的開發工具。https://laravel.com/


在 VM 安裝 Ubuntu 16.04 64bit

我習慣使用 Ubuntu 16.04 Server 64bit,所以環境設定與文件都是Ubuntu的版本;需要其他版本的請自己找。


因為只是練習,推薦使用VM來練習;這邊我用VirtualBox建置。

首先完成 Ubuntu 系統初始安裝,我會預設安裝 OpenSSH Server 方便SSH進去貼指令。裝好後可以匯出後複製一份,這樣QA/Production Server不用重裝一次。

建議VM的網路設定改為 Bridge 橋接模式,會讓VM跟自己的電腦在同一層網路,比較方便。

安裝 Gitlab 


安裝文件可以在 Gitlab官方網站 找到,請按照步驟安裝。
(貼心提醒: 用 SSH 直接複製貼上比較方便)

不過在第二步有個小改動,官方文件是安裝 EE 企業版本(需要買授權),需要手動改為 CE 社群版本。
請把該兩行指令的 gitlab-ee 改為 gitlab-ce。

EXTERNAL_URL 是 gitlab 對外的網址,我改成 "http://gitlab.local"。
後續可以改設定檔更改。


3G記憶體 初始安裝後已經吃了72%

BTW Gitlab很吃記憶體,官方建議至少 4G Ram;因為只是練習,我會給 2G ~ 3G 不然跑起來會卡卡的。

Gitlab 更改設定檔

Gitlab 雖然有網頁介面,不過很多底層的功能還是由設定檔控制的,例如安裝時設定的網址等。

預設安裝的設定檔位置在 /etc/gitlab/gitlab.rb,需要使用管理者權限編輯 (su, sudo)

更改後需要使用 sudo gitlab-ctl reconfigure 重新配置。

理論上重新配置後會自動重啟服務,如果沒有可以使用 sudo gitlab-ctl restart 重啟。

Gitlab 網頁

安裝完成後就可以用瀏覽器進入Gitlab了;不過在此之前需要設定 hosts 讓虛擬的網域名稱對應到IP才連的到。

  • Windows: C:\Windows\System32\drivers\etc\hosts
  • Mac: /private/etc/hosts

第一次進入會要建立 root 帳號的密碼。我習慣另外建自己的帳號改為管理者。


到這裡 gitlab 已經安裝完成了,建立一個 Repo 並且實際 push 程式碼上去吧!


沒有留言:

張貼留言