国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

警惕成人網(wǎng)站免費(fèi)看手機(jī)引流推廣接單

警惕成人網(wǎng)站免費(fèi)看手機(jī),引流推廣接單,朝陽(yáng)市做網(wǎng)站,網(wǎng)站開(kāi)發(fā)工作安排目錄 11、自由風(fēng)格的CI操作(最終)Jenkins容器化實(shí)現(xiàn)方案修改 docker.sock 權(quán)限修改 Jenkins 啟動(dòng)命令后重啟 Jenkins構(gòu)建鏡像推送到Harbor修改 daemon.json 文件Jenkins 刪除構(gòu)建后操作Jenkins 添加 shell 命令重新構(gòu)建 Jenkins通知目標(biāo)服務(wù)器拉取鏡像目…

目錄

  • 11、自由風(fēng)格的CI操作(最終)
    • Jenkins容器化實(shí)現(xiàn)方案
      • 修改 docker.sock 權(quán)限
      • 修改 Jenkins 啟動(dòng)命令后重啟
    • Jenkins構(gòu)建鏡像推送到Harbor
      • 修改 daemon.json 文件
      • Jenkins 刪除構(gòu)建后操作
      • Jenkins 添加 shell 命令
      • 重新構(gòu)建
    • Jenkins通知目標(biāo)服務(wù)器拉取鏡像
      • 目標(biāo)服務(wù)器修改 daemon.json 文件
      • 定義腳本文件
      • Jenkins 添加端口號(hào)參數(shù)
      • Jenkins 添加構(gòu)建后操作
      • 重新構(gòu)建工程

11、自由風(fēng)格的CI操作(最終)

????????前面的架構(gòu)存在的問(wèn)題是,若有多個(gè)目標(biāo)服務(wù)器都需要使用該鏡像,那么每個(gè)目標(biāo)服務(wù) 器都需要在本地構(gòu)建鏡像,形成系統(tǒng)資源浪費(fèi)。若能夠在 Jenkins 中將鏡像構(gòu)建好并推送到 Harbor 鏡像中心,那么無(wú)論有多少目標(biāo)服務(wù)器需要該鏡像,都只需要從 Harbor 拉取即可。

Jenkins容器化實(shí)現(xiàn)方案

????????如果想在Jenkins中構(gòu)建鏡像,則需要Jenkins中有Docker引擎,指的是Jenkins容器內(nèi)有Docker,因?yàn)槲覀兊腏enkins是用docker起的,可以在Jennkins內(nèi)再安裝docker,但這種方式不太方便,不好維護(hù),可以使用與宿主機(jī)共享Docker引擎。

修改 docker.sock 權(quán)限

????????/var/run/docker.sock 文件是 docker clientdocker daemon 在本地進(jìn)行通信的 socket 文件。默認(rèn)的組為 docker,且 other 用戶(hù)不具有讀寫(xiě)權(quán)限,這樣 Jenkins 是無(wú)法來(lái)操作該文 件的。

在這里插入圖片描述

將其組調(diào)整為 root,且為其分配讀寫(xiě)權(quán)限

在這里插入圖片描述

修改 Jenkins 啟動(dòng)命令后重啟

首先強(qiáng)制刪除正在運(yùn)行的 Jenkins 容器。

[root@jenkins run]# docker rm -f jenkins
jenkins

????????然后在 Jenkins 啟動(dòng)命令中新增/var/run/docker.sock,docker 命令文件/usr/bin/docker, 及/etc/docker/daemon.json 文件為數(shù)據(jù)卷。
重啟 Jenkins 容器。

[root@jenkins run]# docker run --name jenkins \
> --restart always \
> -p 8080:8080 \
> -p 50000:50000 \
> -v /var/jenkins_home:/var/jenkins_home \
> -v /var/run/docker.sock:/var/run/docker.sock \ 
> -v /usr/bin/docker:/usr/bin/docker \
> -v /etc/docker/daemon.json:/etc/docker/daemon.json \ # 實(shí)現(xiàn)推送harbor時(shí)使用的http信任,而不是https
> -d jenkins/jenkins:lts

進(jìn)入Jenkins容器查看是否可以使用docker了。

在這里插入圖片描述

Jenkins構(gòu)建鏡像推送到Harbor

????????先把idea的compose.yml文件刪除,push到gitlab,因?yàn)槲覀兪褂胘enkins幫忙構(gòu)建鏡像然后推送到Harbor,不需要到目標(biāo)服務(wù)器進(jìn)行本地制作鏡像并啟動(dòng)容器。(操作沒(méi)截圖,自己記得刪除)

修改 daemon.json 文件

????????Jenkins 是 Harbor 的客戶(hù)端,需要修改/etc/docker/daemon.json 文件。修改后重啟 Docker

[root@jenkins ~]# vim /etc/docker/daemon.json
[root@jenkins ~]# cat /etc/docker/daemon.json 
{"insecure-registries": ["192.168.40.138:8888" # harbor服務(wù)器所在的IP和端口]
}

重啟

[root@jenkins my_hellojenkins]# service docker restart

Jenkins 刪除構(gòu)建后操作

????????原來(lái)的 Jenkins 中配置的“構(gòu)建后操作”完成的是將代碼推送到目標(biāo)服務(wù)器后,讓目標(biāo)服務(wù)器通過(guò) docker compose 完成鏡像的構(gòu)建與啟動(dòng)。但現(xiàn)在不需要了,因?yàn)殓R像構(gòu)建任務(wù)要由 Jenkins 自己完成了。在 Jenkins 當(dāng)前任務(wù)下的“配置”中刪除。

在這里插入圖片描述

Jenkins 添加 shell 命令

????????在 sonarqube 對(duì)代碼質(zhì)量檢測(cè)完畢后,再添加一個(gè)“構(gòu)建步驟”。這個(gè)構(gòu)建步驟通過(guò) shell 命令方式完成。

在這里插入圖片描述

在這里插入圖片描述

mv target/*.jar docker/
cd docker
docker build -t hellojenkins .
docker login -u admin -p Harbor12345 192.168.40.138:8888
docker tag hellojenkins 192.168.40.138:8888/jks/hellojenkins
docker image prune -f
docker push 192.168.40.138:8888/jks/hellojenkins

重新構(gòu)建

????????Jenkins 中在返回的任務(wù)首頁(yè)中,再次執(zhí)行立即構(gòu)建。構(gòu)建成功后,在 Jenkins 主機(jī)中可以查看到構(gòu)建好的鏡像與重新tag 過(guò)的鏡像。

在這里插入圖片描述

在 harbor 的倉(cāng)庫(kù)中也可以看到推送來(lái)的鏡像。
在這里插入圖片描述

在這里插入圖片描述
在這里插入圖片描述

Jenkins通知目標(biāo)服務(wù)器拉取鏡像

目標(biāo)服務(wù)器修改 daemon.json 文件

????????目標(biāo)服務(wù)器是 Harbor 的客戶(hù)端,需要修改/etc/docker/daemon.json 文件。修改后重啟 Docker。

在這里插入圖片描述

定義腳本文件

????????在目標(biāo)服務(wù)器 PATH 路徑下的任意目錄中定義一個(gè)腳本文件 deploy.sh。例如,定義在/usr/local/bin目錄下。然后再為其賦予可執(zhí)行權(quán)限。這樣該 deploy.sh命令就可以在任意目錄下運(yùn)行了。

文件內(nèi)容如下

#!/bin/bash
#harbor的IP地址和端口
harbor_addr_port=$1
#harbor的項(xiàng)目名
harbor_proj=$2
#harbor里的鏡像名
image_repo=$3
#標(biāo)簽
image_tag=$4
#容器內(nèi)部端口
app_port=$5
#宿主機(jī)端口
export_port=$6
#鏡像名
image=$harbor_addr_port/$harbor_proj/$image_repo:$image_tag
#如果容器已經(jīng)存在,就刪除容器
exist_container_id=`docker ps -a | grep $image_repo | awk '{print $1}'`
if [ -n "$exist_container_id" ];thendocker stop "$exist_container_id"docker rm "$exist_container_id"
fi
#判斷tag是否存在,如果存在就刪除,然后拉取最新鏡像
exist_image_tag=`docker images | grep $harbor_addr_port/$harbor_proj/$image_repo | awk '{print $2}'`
if [[ "$exist_image_tag" =~ "$image_tag" ]]; thendocker rmi -f $image
fi
docker login -u admin -p Harbor12345 $harbor_addr_port
docker pull $image
docker run --name $image_repo -d -p $export_port:$app_port $image
echo "SUCCESS"

授予可執(zhí)行權(quán)限

[root@target bin]# chmod +x deploy.sh 

執(zhí)行腳本后可以看到

在這里插入圖片描述

修改idea代碼

在這里插入圖片描述

再次構(gòu)建,構(gòu)建完成之后執(zhí)行腳本

在這里插入圖片描述

瀏覽器查看

在這里插入圖片描述

Jenkins 添加端口號(hào)參數(shù)

在這里插入圖片描述

Jenkins 添加構(gòu)建后操作

還是在 Jenkins 當(dāng)前任務(wù)下的“配置”中,為任務(wù)添加構(gòu)建后操作
在這里插入圖片描述

在這里插入圖片描述

重新構(gòu)建工程

????????這次重新構(gòu)建,可以看到出現(xiàn)了 export_port 的文本框。在這里可以修改容器對(duì)外暴露的端口號(hào)。
在這里插入圖片描述

????????構(gòu)建成功后可以看到,目標(biāo)服務(wù)器中增加了新的鏡像,該鏡像是從 harbor 拉取的,還可以看到,該鏡像的容器也已經(jīng)啟動(dòng)。

在這里插入圖片描述

瀏覽器訪(fǎng)問(wèn)沒(méi)有問(wèn)題

在這里插入圖片描述

http://m.aloenet.com.cn/news/39571.html

相關(guān)文章:

  • 做網(wǎng)站所用的技術(shù)推廣普通話(huà)的宣傳語(yǔ)
  • 國(guó)內(nèi)網(wǎng)站開(kāi)發(fā)短視頻精準(zhǔn)獲客系統(tǒng)
  • 品牌專(zhuān)業(yè)建設(shè)網(wǎng)站常見(jiàn)的搜索引擎
  • 在哪能學(xué)到網(wǎng)站建設(shè)專(zhuān)業(yè)seo推廣是做什么
  • 做植物提取物好的推廣網(wǎng)站seo自動(dòng)優(yōu)化軟件下載
  • 校園網(wǎng)站規(guī)劃與建設(shè)工具大全
  • 網(wǎng)站建設(shè)app開(kāi)發(fā)合同范本百度普通下載
  • 新疆建設(shè)廳官方網(wǎng)站文件鏈接推廣
  • 無(wú)錫 網(wǎng)站建設(shè)黃頁(yè)88網(wǎng)官網(wǎng)
  • 同個(gè)主體新增網(wǎng)站備案外鏈吧怎么使用
  • 做網(wǎng)站看網(wǎng)頁(yè)效果手機(jī)網(wǎng)站排名優(yōu)化
  • 跨境電商千萬(wàn)別做亞馬遜seo排名優(yōu)化工具推薦
  • 地產(chǎn)建站規(guī)劃可以投放廣告的網(wǎng)站
  • 網(wǎng)站建設(shè)服務(wù)價(jià)格表seo顧問(wèn)公司
  • 網(wǎng)站icp備案新規(guī)推廣哪個(gè)平臺(tái)好
  • c 做網(wǎng)站教程百度seo教程視頻
  • 建設(shè)銀行滇龍行網(wǎng)站百度競(jìng)價(jià)推廣點(diǎn)擊器
  • 網(wǎng)站建設(shè)深圳百度霸屏推廣
  • 做網(wǎng)站和app需要多久短網(wǎng)址在線(xiàn)生成
  • 找人做網(wǎng)站價(jià)格2345網(wǎng)址大全設(shè)主頁(yè)
  • 福州網(wǎng)站建設(shè)制作首選熒光信息建網(wǎng)站建設(shè)
  • 收錢(qián)碼合并的網(wǎng)站怎么做東莞seo黑帽培訓(xùn)
  • 網(wǎng)站400百度關(guān)鍵詞優(yōu)化手段
  • vps做網(wǎng)站用什么系統(tǒng)網(wǎng)站推廣途徑和推廣要點(diǎn)有哪些?
  • 站長(zhǎng)工具收錄查詢(xún)女裝關(guān)鍵詞排名
  • 陜西住房與城鄉(xiāng)建設(shè)廳網(wǎng)站微信引流獲客軟件
  • 東莞南城網(wǎng)站建設(shè)公司網(wǎng)絡(luò)營(yíng)銷(xiāo)優(yōu)化推廣
  • 網(wǎng)站建設(shè)實(shí)訓(xùn)報(bào)告建議北京網(wǎng)站制作建設(shè)公司
  • 動(dòng)易網(wǎng)站安裝最新疫情最新消息
  • 做網(wǎng)站怎么買(mǎi)服務(wù)器嗎免費(fèi)seo課程