僅作為個人使用的備忘錄,紀錄一些遇到的問題
並給需要在 gitlab 8 做設定的人參考
本篇設定時的版本: GitLab Community Edition 8.10.3
在設定 runner 前,必須先確保 docker 已經裝好了
安裝參考簡短筆記 docker 設定筆記 Ubuntu 16
直接用腳本裝 docker:
以下指令使用 runner v1.11.4 做設定
runner v1.11.4
為 gitlab 8 能用的最高版本
如果你的 gitlab 是更高的版本,可以替換成更高的來用
設定的問題可以看參考文章內的說明
以下僅記錄我有遇到的
設定時若出現 status=301 Moved Permanently
的錯誤訊息,要注意可能是 http 與 https 的問題
可以嘗試將第一個要輸入的URL改成 https ,也許就能通過
設定的最後2個問題
Please enter the executor:
建議用 docker
就好
Please enter the Docker image:
沒有指定的話預設使用的 image ,用 ubuntu:latest
即可
開啟後即可在 runner 頁面看到機器有連上了
DB 等服務可以透過 service 增加,例如:
他們就會開在同名的位置上,也就是 mongo
與 memcached
需注意 global cache 如果沒有設定 key ,每個 job 的 cache 會是分開的
(不確定後來的版本是否有修正)
如果要使用 ssh ,只能使用 key ,不能用密碼
ssh key 設定參考: SSH 公開金鑰認證:不用打密碼登入 Linux 設定教學,安全又方便
CI指令參考
https://docs.gitlab.com/ee/ci/ssh_keys/
ssh 連線後,直接執行後面字串的指令的話,是沒有部份關鍵字的,像是 nvm
, node
等會找不到
如需要用 nvm
,可以在腳本前加入以下指令
ssh 的問題可以參考以下連結
https://unix.stackexchange.com/questions/332532/how-to-set-path-when-running-a-ssh-command