rancher + harbor + jenkins 自動化部署


1.簡介

rancher 簡化了 k8s操作的軟件,通過rancher可以在不用關心k8s底層通過圖形化界面直接部署微服務.

harbor  類似於docker hub 的私有倉庫,docker可以通過docker pull 拉取鏡像.

jenkins  自動化部署工具,可以自定義腳本和執行時機.

rancher-cli  遠程控制rancher的命令行工具

2.步驟

2.1 打包 rancher-cli 和 kubectl 到鏡像中

先下載 rancher-cli  

 

在下載 kubectl

curl -LO https://dl.k8s.io/release/v1.21.0/bin/linux/amd64/kubectl

https://kubernetes.io/zh/docs/tasks/tools/install-kubectl/

這兩個文件放到一個目錄下創建dockerfile

FROM  eipharbor.jiuqi.com.cn/linux/base/c7-systemd:latest
ADD rancher-linux-amd64-v2.4.9.tar.gz /usr/src
ADD kubectl /usr/src
RUN cd /usr/src;\
tar xf rancher-linux-amd64-v2.4.9.tar.gz;\
mv rancher-v2.4.9/rancher /usr/bin/rancher;\
rm -rf rancher-v2.4.9;\
install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl;
CMD ["/usr/sbin/init"]

打包鏡像,上傳到harbor上   

上傳 harbor上有幾個命令

docker login

docker tag

docker push

可以自行了解 

2.2 在jenkinsfile 中添加 如下命令即可重啟rancher實現自動化部署

withDockerContainer("harbor.com.cn/jenkins_tool/rancher-cli:1.0"){
                         sh "rancher  login ${RANCHER_LOGIN_URL} --token token-2q5tg:6hvcqspdkmv4zf8zjgfwdpfwcpk9psbkc9zn6pjsq8stdkg9l7vwkk \
                                 --skip-verify --context c-cs6ph:p-lndf4"
                        sh "rancher kubectl rollout restart deployment/${params.SERVICE_NAME} --namespace ybz"
                    }

先用

rancher右上角的用戶選項生成token

 --context 參數可以執行命令 rancher context switch 查看

 


免責聲明!

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



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