jenkins+k8s实现持续集成
持續(xù)集成(CI)
集成是指開(kāi)發(fā)人員將代碼提交到git或svn
持續(xù)集成是指讓開(kāi)發(fā)人員持續(xù)提交代碼,寫一點(diǎn)就提交一點(diǎn),這樣就會(huì)更早的發(fā)現(xiàn)代碼差異
每次集成,都可以通過(guò)自動(dòng)化的構(gòu)建來(lái)驗(yàn)證
自動(dòng)化構(gòu)建包括:編譯,打包,部署,自動(dòng)化測(cè)試
準(zhǔn)備docker環(huán)境,資源和k8s集群
可以參考之前的文章
docker基礎(chǔ)
k8s集群構(gòu)建
jenkins安裝
jenkins是一個(gè)持續(xù)集成的工具,實(shí)際上就是一個(gè)任務(wù)調(diào)度平臺(tái)
1、jdk1.8,配置環(huán)境變量
2、Tomcat9下載解壓
3、安裝git
4、安裝maven,配置環(huán)境變量,maven -v驗(yàn)證,修改maven config文件鏡像
5、Jenkins下載war包,放在tomcat的webapps目錄下,啟動(dòng)tomcat
6、訪問(wèn)ip:8080/jenkins
7、解鎖:拿到頁(yè)面的一個(gè)路徑,在系統(tǒng)中找到密碼復(fù)制,就可以解鎖了,開(kāi)始頁(yè)面安裝
8、選擇安裝插件:ssh、publish over ssh、git parameter、git、Maven Integration
9、jenkins的全局工具配置中,配置jdk(echo $JAVA_HOME)、git(which git)、maven(echo $MAVEN_HOME)
Registry安裝配置
1、下載鏡像
docker pull registry
2、啟動(dòng),ip映射,磁盤掛載
docker run -p 5000:5000 -v /home/registry_images:/var/lib/registry -d registry
3、指定容器所在宿主機(jī)和端口白名單
修改/etc/docker/deamon.json,添加“insecure-registries”:[“ip:5000”]
insecure-registries就是非安全的鏡像倉(cāng)庫(kù)列表,就是鏡像倉(cāng)庫(kù)的白名單
4、執(zhí)行daemon-reload和restart docker 重啟
jenkins項(xiàng)目創(chuàng)建與配置
打包鏡像
創(chuàng)建一個(gè)maven項(xiàng)目
設(shè)置參數(shù)化構(gòu)建
設(shè)置git源代碼
設(shè)置maven的構(gòu)建命令打包:clean package
填入shell命令(把最終生成的jar包文件打包成docker鏡像并推送到鏡像倉(cāng)庫(kù)中去)
k8s運(yùn)行應(yīng)用
1、設(shè)置jenkins服務(wù)器到k8s master 的ssh免密登錄(jenkins就可以遠(yuǎn)程到k8s的master上去執(zhí)行腳本或者命令了)
// 生成秘鑰 ssh-keygen -t rsa // 把公鑰copy到 k8s master上 ssh-copy-id -i ~/.ssh/id_rsa.pub root@master的ip2、jenkins上選擇設(shè)置構(gòu)建后操作
yaml文件提前準(zhǔn)備好在項(xiàng)目中
用shell將yaml文件copy到k8s master上并運(yùn)行應(yīng)用
讓k8s根據(jù)yaml文件去啟動(dòng)應(yīng)用
jenkins構(gòu)建
選擇構(gòu)建
選擇分支
查看日志
總結(jié)
以上是生活随笔為你收集整理的jenkins+k8s实现持续集成的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 布尔类型(boolean/Boolean
- 下一篇: redis单线程为什么还快的个人解释