Docker+Jenkins實現(xiàn)一鍵自動化部署項目的圖文教學(xué)
1、docker安裝Jenkins
1.1、在根目錄下創(chuàng)建文件夾
cd / mkdir -p /mydata/jenkins/jenkins_home mkdir -p /mydata/jenkins/localtime
1.2、下載jenkins鏡像并啟動運行
docker pull jenkins/jenkins:2.414.2
docker run -d -u root -p 8080:8080 -p 50000:50000 -v /mydata/jenkins/jenkins_home:/var/jenkins_home -v /mydata/jenkins/localtime --name jenkins jenkins/jenkins:2.414.2
1.3、初始化Jenkins
獲取密碼
docker logs jenkins
頁面訪問:http://{部署Jenkins所在服務(wù)IP}:8080
1.4、Jenkins安裝步驟
選擇推薦的插件
密碼:123456
2、安裝maven插件
2.1、通過手動上傳安裝
apache-maven-3.9.9-bin.tar.gz
解壓并復(fù)制到指定目錄
tar -zxvf apache-maven-3.9.9-bin.tar.gz
cp -r /mydata/apache-maven-3.9.9 /mydata/jenkins/jenkins_home
2.2、配置maven倉庫
<localRepository>/mydata/jenkins/jenkins_home/apache-maven-3.9.9/m2</localRepository> <!-- 阿里云倉庫 --> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/repositories/central/</url> </mirror> <profile> <id>JDK-1.8</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.8</jdk> </activation> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> </properties> </profile>
3、Jenkins全局配置
路徑:Dashboard > Manage Jenkins > Tools
3.1、下載插件 Publish over SSH
3.2、配置地址
1.SSH Server Name 填你虛擬機IP或用戶名
2.Hostname 填你的虛擬機IP
3.Username 默認(rèn)root
4.Remote Directory 填 /
5.保存
4、創(chuàng)建任務(wù)測試
注意:這個任務(wù)名稱對應(yīng)的就是代碼所在的文件夾
4.1、配置倉庫地址
4.2、構(gòu)建啟動
目標(biāo):clean install
pom.xml是項目代碼所在位置
cp /mydata/jenkins/jenkins_home/workspace/fufeng/target/deploy-0.0.1-SNAPSHOT.jar /mydata/jenkins/jenkins_home/jar/ #!/bin/bash APP_NAME=deploy-0.0.1-SNAPSHOT.jar LOG_NAME=deploy-0.0.1-SNAPSHOT.log pid=`ps -ef | grep $APP_NAME | grep -v grep|awk '{print $2}'` function is_exist(){ pid=`ps -ef | grep $APP_NAME | grep -v grep|awk '{print $2}'` if [ -z ${pid} ]; then String="notExist" echo $String else String="exist" echo $String fi } str=$(is_exist) if [ ${str} = "exist" ]; then echo " 檢測到已經(jīng)啟動的程序,pid 是 ${pid} " kill -9 $pid else echo " 程序沒有啟動了 " echo "${APP_NAME} is not running" fi str=$(is_exist) if [ ${str} = "exist" ]; then echo "${APP_NAME} 已經(jīng)啟動了. pid=${pid} ." else source /etc/profile BUILD_ID=dontKillMe nohup java -Xms300m -Xmx300m -jar /mydata/jenkins/jenkins_home/workspace/fufeng/target/$APP_NAME >$LOG_NAME 2>&1 & echo "程序已重新啟動..." fi
啟動腳本里面的路徑手動創(chuàng)建
應(yīng)用保存!
4.3、驗證是否啟動成功
查看Java進程:
頁面測試:
應(yīng)用保存!
以上就是Docker+Jenkins實現(xiàn)一鍵自動化部署項目的圖文教學(xué)的詳細內(nèi)容,更多關(guān)于Docker Jenkins自動化部署項目的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
在docker環(huán)境中實現(xiàn)配置hosts
這篇文章主要介紹了在docker環(huán)境中實現(xiàn)配置hosts,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-04-04docker啟動mysql并映射數(shù)據(jù)目錄(含備份腳本)
本文主要介紹了docker啟動mysql并映射數(shù)據(jù)目錄(含備份腳本),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-01-01docker靈活的構(gòu)建PHP環(huán)境的實現(xiàn)
這篇文章主要介紹了docker靈活的構(gòu)建PHP環(huán)境的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12通過Dockerfile構(gòu)建Docker鏡像的方法步驟
這篇文章主要介紹了通過Dockerfile構(gòu)建Docker鏡像的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02Docker 默認(rèn)bridge網(wǎng)絡(luò)中配置DNS的方法
這篇文章主要介紹了Docker 默認(rèn)bridge網(wǎng)絡(luò)中配置DNS的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-03-03