2018-03-27 18:03:38
目錄1、安裝
2、配置
3、發布
4、指令碼
官方特性介紹:publish over ssh
1、安裝
2、配置
name : 這裡是自定義的ssh遠端伺服器,如果有多台,點選add post-build step 繼續新增
source files : 原始檔位址,相對位址 比如 /root/.jenkins/workspace/jobname/target/xx.war 直接寫成 target/xx.war就行
remove prefix : 這裡指的是忽略前面的 target/ 遠端伺服器直接顯示就是xx.war
remote directory : 遠端伺服器要儲存的檔案目錄
exec command : 這裡直接寫 bash 指令碼名稱 xx.sh 這裡也是遠端伺服器的指令碼
3、發布
4、指令碼
#!/bin/bash
## __auther__: xiong
# __ time __: 2023年03月28日 11:00:54
# __ 作用 __: 用於jenkins build完成之後的最後操作shell指令碼
# __ 使用 __: 定義jenkins
##---------------------------------- 檔案路徑配置 ----------------------------------
# 定義基礎路徑及目錄
server_name=m2mmanage
# tomcat名稱
tomcat_server_name=tomcat_m2mmanage
# tomcat 服務啟動指令碼
tomcat_serivce=/usr/local/$tomcat_server_name/sbin/$tomcat_server_name
# 儲存檔案路徑
base_dir=/usr/local/website
work_dir=$base_dir/m2mmanagedest
# 以時間的方式來發布版本
time=`date +%y%m%d%h%m`
time_dir=$work_dir/$server_name$time
# 鏈結路徑
link_dir=$base_dir/$server_name
# 配置檔案路徑
conf_dir=web-inf/classes
#---------------------------------- 啟動及判斷配置 ----------------------------------
# 建立目錄,如果存在,直接退出重新發布一次
if [ -d $time_dir ];then
exit 5
else
/bin/mkdir $time_dir
fi# 檢測這個埠判斷服務是否啟動,
if /usr/sbin/ss -tnl | grep 這裡定義埠位址;then
# 啟動了那就直接停止它
$tomcat_serivce stop
fi# 將打包上傳的檔案傳到這個目錄下
/usr/bin/unzip /mnt/$server_name/$server_name.war -d $time_dir/ &>/dev/null
# 建立乙個用於儲存當前上線包的無效配置檔案,並當無效配置檔案複製到該檔案中
old_conf_dir=$time_dir/$conf_dir
/bin/mkdir $old_conf_dir/old_conf
/bin/mv -i $old_conf_dir/*.p* $old_conf_dir/old_conf/
# 將上乙個版本的配置檔案複製到當前上線的檔案中
/bin/mv -i $link_dir/$conf_dir/*.p* $time_dir/$conf_dir
if [ -d $link_dir ];then
/bin/rm -irf $link_dir
fi# 重新定義新上線包的軟鏈結
/bin/ln -sv $time_dir $link_dir
# 啟動服務
$tomcat_serivce start
Jenkins安裝部署
準備軟體安裝包 jdk tomcat jenkins.war 開始安裝 第一步 安裝jdk。第二步 安裝tomcat 第三步 安裝jenkins 1 官網下jenkins.war包。選擇長期支援版本 lts 如下圖。5 開啟瀏覽器,訪問http localhost 8080 jenkins 7 安裝...
docker安裝jenkins自動化部署工具
1.安裝docker,之前的文章有介紹 2.首先從docker中拉取乙份jenkins映象 docker pull jenkins 3.在映象文件裡,我們知道jenkins訪問的埠號是8080,另外還需要暴露乙個tcp的埠號50000。我們使用如下命令啟動jenkins映象。docker run d...
docker 安裝JenKins自動化部署
docker pull jenkins執行容器docker run itd e tz asia shanghai p 8085 8080 p 50000 50000 name jenkins privileged true v jenkins var jenkins home v etc local...