jenkins如何進(jìn)行自動化部署
jenkins自動化部署
hello,大家好,前文我們已經(jīng)下載好我們的jenkins了,下面我們用jenkins來實(shí)現(xiàn)自動化部署啦!
一、下載插件
我們選擇插件管理

一個是Maven Integration plugin,一個是 Publish Over SSH


這里因?yàn)樽髡咭呀?jīng)下載好了,所以在Installed可以查找到
二、設(shè)置全局工具配置
maven和jdk下載可以去查看作者
2.1maven

如果報(bào)403的話將自己掛載jenkins目錄下面的config.xml文件中的

掛載的jenkins目錄下創(chuàng)建一個mavenRepository文件并且賦權(quán)限
chmod 777 mavenRepository
將下載好maven中的/maven/apache-maven-3.9.6/conf/settings中的

還要配置一下鏡像加速

作者將鏡像放在下面了
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>2.2jdk

2.3git
我們使用以下命令
yum install git
我們來查看一下是否下載成功
git --version
![]()
可以看到我們已經(jīng)下載好了,默認(rèn)下載的路徑為 /usr/bin/git

三、系統(tǒng)配置
我們使用以下命令來生成ssh密鑰
ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa
生成之后,路徑就是在/root/.ssh/中

我們把id_rsa.pub中的公鑰,粘貼到authorized_keys中,authorized_keys即授權(quán)公鑰,是別人連接自己時,需要查詢的,沒有則不給連

完成之后保存,下面我們就要構(gòu)建任務(wù)啦
四、任務(wù)構(gòu)建

點(diǎn)擊新建任務(wù)

名稱需要自己填,然后點(diǎn)擊確定
我們寫完項(xiàng)目之后,作者使用的是springboot簡單的一個項(xiàng)目寫完之后要推送自己的git倉庫

shell腳本
group_name='yanshuling'
app_name='yanshuling'
app_version='0.0.1.jar'
echo '----copy jar----'
docker stop ${app_name}
docker rm ${app_name}
docker rmi ${group_name}/${app_name}:${app_version}
cd /yuan/brook/yanshuling/
docker build -t ${group_name}/${app_name}:${app_version} .
docker run -p 8686:8080 --name ${app_name} \
-e TZ="Asia/Shanghai" \
-d ${group_name}/${app_name}:${app_version}解釋一下:
group_name='yanshuling':定義了一個變量group_name并賦值為 'yanshuling',用于指定 Docker 鏡像的組名。app_name='yanshuling':定義了一個變量app_name并賦值為 'yanshuling',用于指定應(yīng)用程序的名稱。app_version='0.0.1.jar':定義了一個變量app_version并賦值為 '0.0.1.jar',用于指定應(yīng)用程序的版本。echo '----copy jar----':輸出一段文本 '----copy jar----',用于提示正在進(jìn)行復(fù)制jar文件的操作。docker stop ${app_name}:停止名為${app_name}的 Docker 容器。docker rm ${app_name}:刪除名為${app_name}的 Docker 容器。docker rmi ${group_name}/${app_name}:${app_version}:刪除名為${group_name}/${app_name}:${app_version}的 Docker 鏡像。cd /yuan/brook/yanshuling/:切換目錄到/yuan/brook/,假設(shè)該目錄是包含了你的 Java 應(yīng)用程序代碼和相關(guān)文件的目錄。docker build -t ${group_name}/${app_name}:${app_version} .:基于當(dāng)前目錄下的 Dockerfile 構(gòu)建一個名為${group_name}/${app_name}:${app_version}的 Docker 鏡像。docker run -p 8686:8080 --name ${app_name} \ ...:運(yùn)行一個 Docker 容器,映射主機(jī)端口 8686 到容器內(nèi)部的端口 8080,設(shè)置時區(qū)為 Asia/Shanghai,容器的名稱為${app_name},鏡像為${group_name}/${app_name}:${app_version}。

構(gòu)建

然后我們點(diǎn)擊保存,點(diǎn)擊開始構(gòu)建,就成功啦,等到構(gòu)建完成之后,我們可以看看自己的容器有沒有啟動成功哦~
總結(jié)
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Docker安裝RabbitMQ并安裝延時隊(duì)列插件
本文主要介紹了Docker安裝RabbitMQ并安裝延時隊(duì)列插件,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05
docker部署vue項(xiàng)目的實(shí)現(xiàn)步驟
本文主要介紹了docker部署vue項(xiàng)目的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07
Docker?Kill/Pause/Unpause命令使用與區(qū)別小結(jié)
本文詳細(xì)介紹了Docker中的三個重要命令,kill、pause和unpause,這些命令在管理和操作運(yùn)行中的容器時非常有用,具有一定的參考價值,感興趣的可以了解一下2024-03-03

