Docker安裝jenkins實(shí)現(xiàn)微服務(wù)多模塊打包的示例代碼
廢話不多說(shuō),直接講正事
1.安裝
# 1.pull jenkins(若使用jdk11則可pull最新版jenkins,否則最新版配置jdk8時(shí)會(huì)有兼容bug) docker pull jenkins/jenkins:alpine-jdk8 # 2.run jenkins docker run -d --name jenkins jenkins/jenkins:alpine-jdk8 # 3.拷貝jenkins_home到宿主機(jī) docker cp jenkins:/var/jenkins_home /data/ # 4.刪除剛剛啟動(dòng)的jenkins docker stop jenkins && docker rm jenkins # 5.重新啟動(dòng)一個(gè)映射拷貝出來(lái)的home docker run -d --restart=unless-stopped --name jenkins -u root \ -v $(which docker):/usr/bin/docker \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /data/esp/:/data/esp/ \ -v /data/jenkins_home:/var/jenkins_home \ -v /etc/localtime:/etc/localtime \ -p 9090:8080 -p 50000:50000 jenkins/jenkins:alpine-jdk8 # -uroot:已jenkins中root用戶啟動(dòng) # -p:映射容器中8080、50000端口到宿主機(jī)的9090、50000端口 # -v:映射項(xiàng)目部署目錄及jenkins工作目錄到容器中 # -v /etc/localtime:/etc/localtime:同步容器與宿主機(jī)的時(shí)間 docker logs -f jenkins ************************************************************* ************************************************************* ************************************************************* Jenkins initial setup is required. An admin user has been created and a password generated. Please use the following password to proceed to installation: ------------此處應(yīng)有密碼------------ This may also be found at: /var/jenkins_home/secrets/initialAdminPassword ************************************************************* ************************************************************* *************************************************************
2.初始化
訪問(wèn):http://ip:9090
出現(xiàn)下圖表示正在啟動(dòng)中,稍等片刻即可

密碼上文:------------此處應(yīng)有密碼------------




3.配置jenkins
3.1 安裝Maven
Manage Jenkins -> Global Tool Configuration -> Maven

3.2 配置Maven插件
Manage Jenkins -> Manage Plugins -> filter搜索:Maven Integration


3.3 安裝svn插件


4. 創(chuàng)建自動(dòng)化部署任務(wù)
工作臺(tái)->新建任務(wù)

4.1 配置清理舊的構(gòu)建
不清理的話可能jar包會(huì)越來(lái)越多撐滿磁盤

4.2 創(chuàng)建svn賬密憑證
id/用戶名:svn賬號(hào)
密碼:svn密碼
描述:憑證名稱(可不填)
其余可不填,點(diǎn)擊添加即可


4.3 填寫build命令

clean package或clean install
4.4 首次構(gòu)建

下圖表示正在拉取svn項(xiàng)目,耐心等待即可

至此為止,就可以符合大部分maven項(xiàng)目拉取、打包的功能了,剩下一些簡(jiǎn)單的sh腳本啟動(dòng)可自行百度,很簡(jiǎn)單。
下文偏俺公司個(gè)性化操作,執(zhí)行sh文件來(lái)啟動(dòng)項(xiàng)目等,對(duì)他人意義不大,可以了解了解;或者把我執(zhí)行sh文件的shell命令改成啟動(dòng)java程序即可
5. 配置maven運(yùn)行命令及shell腳本
5.1 maven父子項(xiàng)目依賴指令配置

5.2打包完成之后shell命令

#!/bin/bash
project_name="manage"
dir_name="manage"
ps -ef | grep ${project_name}.jar | grep -v grep | awk '{print $2}' | xargs kill -9
cd /home/espuser/.jenkins/workspace/package_script
mv ${project_name}.jar /data/esp/${dir_name}/
echo "start project"
cd /data/esp/${dir_name}/
BUILD_ID=dontKillMe nohup java -jar ${project_name}.jar --spring.profiles.active=prod \
| cronolog ./logs/${project_name}/catalina-%Y-%m-%d.out >> /dev/null 2>&1 &
echo "start success"
到這就全配置好了,保存后點(diǎn)擊部署即可;查看控制臺(tái)輸出:↓

到此這篇關(guān)于Docker安裝jenkins實(shí)現(xiàn)微服務(wù)多模塊打包的示例代碼的文章就介紹到這了,更多相關(guān)Docker jenkins多模塊打包內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
docker 數(shù)據(jù)目錄遷移的兩種實(shí)現(xiàn)方法
本文主要介紹了docker 數(shù)據(jù)目錄遷移的兩種實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-03-03
idea使用docker插件一鍵部署項(xiàng)目的操作方法
這篇文章主要介紹了idea使用docker插件一鍵部署項(xiàng)目的操作方法,本文通過(guò)圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2025-04-04
docker安裝opengauss數(shù)據(jù)庫(kù)配置過(guò)程詳解
這篇文章主要為大家介紹了docker安裝opengauss數(shù)據(jù)庫(kù)配置過(guò)程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09
詳解Docker如何在前端項(xiàng)目動(dòng)態(tài)插入并使用變量
這篇文章主要為大家詳細(xì)介紹如何在Docker前端鏡像中設(shè)置變量以及使用變量的方法,文中的示例代碼講解詳細(xì),有需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-04-04
兩種方式創(chuàng)建docker鏡像的啟動(dòng)容器時(shí)區(qū)別介紹(總結(jié)篇)
這篇文章主要介紹了基于兩種創(chuàng)建docker鏡像的啟動(dòng)容器時(shí)區(qū)別總結(jié),第一種凡是用docker commit生成的鏡像啟動(dòng)的時(shí)候可以加載一個(gè)啟動(dòng)自己應(yīng)用的腳本,第二種用Docfile文件生成的鏡像時(shí),來(lái)啟動(dòng)容器就不用再加這個(gè)腳本了,具體詳情一起通過(guò)本文學(xué)習(xí)吧2016-10-10
教你如何通過(guò)編寫dockerfile部署python項(xiàng)目
Dockerfile是一個(gè)放置在項(xiàng)目根目錄下的描述文件,可以利用 Docker 命令基于該文件構(gòu)建一個(gè)鏡像,下面這篇文章主要給大家介紹了關(guān)于如何通過(guò)編寫dockerfile部署python項(xiàng)目的相關(guān)資料,需要的朋友可以參考下2024-07-07
docker容器調(diào)用yum報(bào)錯(cuò)的解決辦法
在本篇文章里小編給大家分享的是關(guān)于docker容器調(diào)用yum報(bào)錯(cuò)的解決辦法,有興趣的朋友們可以參考下。2020-03-03

