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