win10使用docker搭建jenkins實現gitee自動化部署


環境准備:

  1. win10
  2. docker
  3. gitee
  4. 一台服務器
安裝jenkins配置環境

首先你自己的需要在電腦上搭建docker的環境,這邊就不介紹docker了。

接下來就是搜索鏡像,安裝jenkins,直接看圖吧

image-20210323110132481

安裝好后啟動的時候需要指定下掛載目錄,方便后續的修改和查看

docker run -u root -d -p 8080:8080 -p 50000:50000 -v F:\tmp\jenkins_data:/var/jenkins_home  -v /var/run/docker.sock:/var/run/docker.sock --name jenkins-test jenkinsci/blueocean

等待一會,打開瀏覽器 localhost:8080就可以看到以下畫面

image-20210323111450859

然后去我們剛剛掛載的目錄下找到secrets下的初始密碼:

image-20210323111551321

登錄進去初始化一會,根據你的網絡狀況看是否能加載出來這個頁面

image-20210323111706797

安裝推薦的插件就行,要是沒加載出來,就跳過等下去,手動安裝插件,默認安裝的插件如圖所示:

image-20210323111925779

安裝完成就會讓你創建一個賬戶,創建完成會點擊重啟,等待幾分鍾就好,登錄進去就行。

image-20210323112017754

image-20210323112141242

配置:
進來就先進去,系統管理->插件管理->高級

將http://updates.jenkins.io/update-center.json 改為http的,記得點擊下面的立即獲取,等待驗證一下

image-20210323112412393

gitee插件

然后就是安裝所需要的插件,這邊我用的是gitee,所以需要下載gitee的,等待安裝重啟

image-20210323112628200

ssh插件

安裝ssh插件,需要上傳到服務器運行項目

image-20210323113333145

maven任務插件

安裝maven任務插件

image-20210323115528920

maven外部配置插件

安裝maven外部配置插件

image-20210323113818613

jenkins配置

maven的配置

剛剛maven的插件下好后,在系統管理中就多了managed files

image-20210323114400773

image-20210323114625830

點進去后,左側選擇add 選擇maven settings.xml 更改自己想要的配置就行。

全局配置

maven就選擇剛剛新建的xml文件,這里的jdk,是選擇的jenkins默認安裝的,使用docker exec 進入jenkins的容器,使用which java

查看

image-20210323115157785

image-20210323115051821

后續的git和maven我都是用的自動安裝,安裝完成重啟jenkins

image-20210323115246088

但是git的自動安裝完成也要配置一次,進入jenkins容器 which git

image-20210323145610802

image-20210323145627159

在全局設置中,需要添加一個gitee的令牌image-20210323135722713

image-20210323134025140

ssh上傳到服務器配置 ,在全局配置里面的選項

image-20210323141012656

新增maven任務

image-20210323120033469

選擇剛剛配置的gitee地址,配置項目地址和登錄gitee的賬號密碼

image-20210323135940187

選擇構建觸發器

注意下面的gitee webhook填寫的是localhost 但是我這邊用了花生殼做了映射,所以我在gitee中的配置是外網的

花生殼的映射

image-20210323141722324

構建觸發器的配置

image-20210323140046691

倉庫的webhook配置

image-20210323140213226

執行構建

image-20210323145249767

構建后上傳到服務器 執行停止和啟動腳本

image-20210323145303152

image-20210323145343636

image-20210323145404837

腳本注意

start.sh 一定要加這個 不然你的腳本可能不會被執行,后台也會被殺掉

source /etc/profile
BUILD_ID=dontKillMe

source /etc/profile
#!/bin/bash
export JAVA_HOME=/home/tools/jdk1.8.0_251
echo ${JAVA_HOME}
echo 'Start the program : mall-0.0.1-SNAPSHOT.war'
chmod 777 /root/tmp/mall-0.0.1-SNAPSHOT.war
echo '-------Starting-------'
cd /root/tmp/
source /etc/profile
BUILD_ID=dontKillMe 
nohup /home/tools/jdk1.8.0_251/bin/java -Dhudson.util.ProcessTree.disable=true -jar mall-0.0.1-SNAPSHOT.war > /dev/null 2>&1 >> test.log &
sleep 2
pid=`ps -ef |grep java|grep mall-0.0.1-SNAPSHOT.war|awk '{print $2}'`
echo 'pid: ' $pid
echo 'start success'

stop.sh

source /etc/profile
#!/bin/bash

echo "Stop Procedure : mall-0.0.1-SNAPSHOT.war"
pid=`ps -ef |grep java|grep mall-0.0.1-SNAPSHOT.war|awk '{print $2}'`
echo 'old Procedure pid:'$pid
if [ -n "$pid" ]
then
kill -9 $pid
fi


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM