您好,登錄后才能下訂單哦!
文章主要為大家詳細介紹了用rancher商店安裝drone并用drone關聯gitlab的方法,圖文詳解容易學習,非常適合初學者入門,感興趣的小伙伴們可以參考一下。
1 本文環境是 k8s v1.16.3,rancher v2.3.3。
2 創建 gitlab Oauth 應用程序
登錄 gitlab,選擇 setting:
選擇 "application", 填寫相關信息,Redirect URI 是回調 drone 服務器地址(下面會進行安裝,這里先寫上沒關系。我的地址是 http://jiuxi.drone.org/login,注意 /login 是必須后綴,不要忘寫)。
保存后生成授權信息如下:
gitlab 配置結束。
3 創建 secret
首先通過 kubelet 創建 secret,其中 “clientSecret” 值就是上面 gitlab 創建 oauth 應用的 secret 值:
kubectl create secret generic drone-server-secrets \
--namespace=drone \
--from-literal=clientSecret="93e85934b165566125bdc313288d79fb446c486d18afaf07f7c97e36297b00bd"
4 創建項目空間和命名空間
登錄 rancher,選擇指定集群:
點擊進入集群(jiuxi),可以看到集群的 dashboard,選擇“項目/命名空間”:
選擇“添加項目”:
填寫項目名稱(drone)并創建:
在新增項目(drone)下選擇“添加命名空間”:
填寫命名空間名(drone)并創建:
項目空間和命名空間創建完畢。通過導航點擊進入,以后的操作都會在此項目空間下進行。
5 安裝 nfs 服務器
安裝 nfs 服務器的原因是 drone 需要存儲空間,這里采用 nfs。如何安裝 nfs 服務器,請參考本人《輕松完爆 nfs 安裝》,不用擔心,簡單容易,讓你分分鐘輕松完爆。
mkdir -p /data/nfs/drone/1g
chmod 777 -R /data/nfs/drone/1g
echo "/data/nfs/drone 10.110.0.0/16(rw,sync,no_root_squash)" >> /etc/exports
systemctl restart nfs
6 創建 pv
編輯 pv-drone-1g.yaml 文件,其中 server 地址就是 nfs 服務器所在地址:
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-drone-1g
spec:
capacity:
storage: 1Gi
volumeMode: Filesystem
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
nfs:
server: 10.110.101.106
path: /data/nfs/drone/1g
創建 pv:
kubectl apply -f pv-drone-1g.yaml
7 創建 pvc
編輯 pvc-drone-1g.yaml 文件:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-drone-1g
namespace: drone
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
volumeMode: Filesystem
創建 pvc:
kubectl apply -f pvc-drone-1g.yaml
由于先創建 pv,然后再創建的 pvc,因此查詢 pvc 狀態,發現 pvc 已經跟 pv 綁定成功:
8 應用商店添加 drone
進入項目空間(drone)下的應用商店,選擇“啟動”:
通過搜索找到 “drone”:
點擊后截圖如下:
“Drone settings” 配置內容:
說明如下:
Drone Host Name: drone 主機名
Set Drone Admin User: 上面創建 gitlab oauth 時的 gitlab 用戶名
Drone integration Server: 代碼倉庫類型,本人是 gitlab
Select the Existing Drone Provider Secret; 上面用 kubectl 創建的 secret
GitLab OAuth3 Client ID : gitlab oauth 的 clientID
GitLab Server Address: gitlab 倉庫地址
"Service and Load balance" 配置內容:
因為我安裝了 nginx-ingress,所以采用 load balance。有關如何安裝 nginx-ingress,你可以查看我的相關文章,簡單到讓你分分鐘完爆。
配置完畢后點擊 “啟動”,下圖是啟動成功后的狀態,有時頁面響應不及時,可以多刷新幾次看運行狀態:
點擊上圖中的 “80/http" 鏈接,直接會跳轉到 gitlab 倉庫授權頁面,選擇 “Authorize”:
頁面會重新回到 drone,此時頁面會同步你的 gitlab 倉庫狀態,同步完成后,會顯示你的 gitlab 倉庫代碼:
上文描述的就是用rancher商店安裝drone并用drone關聯gitlab的方法,具體使用情況還需要大家自己動手實驗使用過才能領會。如果想了解更多相關內容,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。