Gitlab 自動化部署 + 局域網訪問 gitlab pages


介紹

前些天好不容易升級了 Gitlab,組件庫文檔也搭建好了,只差自動化部署。由於只是想給團隊內部使用,所以 gitlab 部署時並沒有使用域名,而 gitlab pages 訪問卻需要填具體域名,如果填 IP 的話是訪問不到的。下面記錄下簡單的配置過程。

安裝

安裝前先查看是否已經安裝了

gitlab-runner -v

如果還沒安裝的話,可以根據官方的方法進行安裝

# Download the binary for your system
sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64

# Give it permissions to execute
sudo chmod +x /usr/local/bin/gitlab-runner

# Create a GitLab CI user
sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash

# Install and run as service
sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
sudo gitlab-runner start

配置

修改 gitlab.rb 的配置文件

vi /etc/gitlab/gitlab.rb

gitlab pages 的域名我們假設為 http://kk-gitlab.cn,你也可以根據自己的喜好來填,切記不能是 IP 地址!
修改如下

##! Define to enable GitLab Pages
pages_external_url "http://kk-gitlab.cn"
gitlab_pages['enable'] = true

保存后,執行以下命令

# 刷新配置
gitlab-ctl reconfigure
# 重啟 gitlab
gitlab-ctl restart

然后我們需要先啟動 gitlab-runner 服務

gitlab-runner start

啟動成功后我們就需要開始注冊 runner 了,具體執行命令可通過下圖步驟獲得,需要注意的是登錄的賬號必須為管理者賬號,否則看不到那個“設置”按鈕

點擊第三步,彈出提示窗,在最底下找到類似下面的語句,復制到服務器執行

sudo gitlab-runner register --url http://xx.xx.xx.xxx/ --registration-token xxxxxxxxxxxxxx

執行后需要你輸入一些信息,步驟如下

  1. 輸入url地址(enter 跳過)
  2. 輸入token(enter 跳過)
  3. 輸入描述,任意即可
  4. 輸入標簽(enter 跳過)
  5. 選擇Runner executor,這里選擇 shell

操作完后,刷新 Runners 頁面,就可以看到新注冊的 runner 了

點擊編輯,進入 runner 的設置,設置保存后,在頁面下面選擇要應用 runner 的項目 enable 即可

我們可以檢查下 runner 的狀態

gitlab-runner verify

此時我們重新提交代碼時,gitlab-runner 應該會自動執行部署了,部署成功如下圖

在上圖我們可以看到 gitlab-page 的訪問地址,直接訪問是不行的,因為是我們亂寫的域名,此時我們如果只在本地訪問的話,可以修改服務器和本地機器的 hosts,將 gitlab-page 的域名指向我們服務器的IP

# 服務器端 hosts 增加
127.0.0.1 gitlab-page 的地址
# 本地的 hosts 增加
服務器IP  gitlab-page地址

至此,本地可以直接訪問你的 gitlab pages 了,當然這種方式不是很好的地方是每個項目都要修改一次 hosts,后面或許會通過 nginx 來做轉發,待續。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM