現在大多數公司都很多項目需要自動部署 到多台服務器 代碼檢查等工作 ,為了提供工作效率往往需要我們的ci就閃亮登場了
今天說一下我所采用的 gitlab-runner 提供的方案 ,感覺這個比較實用而且基本上很多公司也在用gitlab環境 ,應該也很方便部署
減少了再引進其他軟件平台所帶來的不便,廢話不多說 直接進入主題 如何操作使用:
1.找到一個適合自己gitlib 版本的 gitlib-runner 下載 rpm包
2.安裝對應的包 rpm -ivh
3.gitlab-runner register 輸入你的gitlab地址
4.去gitlab上找到 對應授權的 串碼
5.起一下名字 和 標簽 和執行方式
6.然后 在你的gitlab上就會出現對應的 一個新的記錄 表明你的gitlab已經和對應的服務器進行通訊了(創建的分享類型可以是共享的還有 私有的 或者標注標簽的 根據自己的工作需求自己設定)
7.在項目中創建 .gitlab-ci.yml 這個文件中寫入你項目要自動執行的內容 比如說PHP可以進行拉代碼 同步代碼 開啟服務等任務。當然現在的大前端趨勢下也有很多 任務可以做 代碼服務器端
的npm構建 代碼的自動檢查 等都可以在此文件中進行執行。 具體詳情可以參考 https://github.com/Fennay/gitlab-ci-cn 官網中的介紹 ,功能很強大一定可以滿足你的需求
8.完成上一步操作后就可以執行你要操作的內容了 ,后面再有操作 有代碼提交動作就會自動進行構建 ,當然構建會有不同結果 失敗 或者通過
常見問題回答及提醒:
1. 執行的構建一直失敗 :檢查構建內容 是否有語法錯誤 檢查對應命令是否可以執行成功 服務器端程序默認的 gitlabruner 權限 是否程序有對應相應權限。
沒有的話請改變對應程序的所屬組 或更改權限
2.注意代碼倉庫 所對應的對應 runner 盡量合理的分配 runner ,控制runner 權限 。
3.注意服務器上的runner程序對應的權限 不要讓他成為黑客攻擊服務器的跳板。