網站首頁 編程語言 正文
原理:Jenkins構建(開發提交代碼到代碼管理平臺),Jenkins處理(Jenkins獲取遠程代碼,自動將源代碼實現打包,執行shell腳本啟動)。
Linux安裝Docker
sudo yum install -y yum-utils sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo sudo yum install docker-ce docker-ce-cli containerd.io sudo systemctl start docker
aliyun配置鏡像加速器
配置鏡像加速器 針對Docker客戶端版本大于 1.10.0 的用戶 您可以通過修改daemon配置文件/etc/docker/daemon.json來使用加速器 sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://r27gglie.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
基于Docker安裝Jenkins環境
1、使用docker安裝jenkins
docker run -p 8080:8080 -p 50000:50000 -v jenkins_data:/var/jenkins_home jenkinsci/blueocean
2、進入到docker容器查看密鑰
docker exec -it dfe5e689b6c9 /bin/bash
cat /var/jenkins_home/secrets/initialAdminPassword
3、打開8080網頁并輸入密鑰
970cbd92daba4a54ad593ff4c44449e2
將本地項目上傳到碼云代碼管理平臺
https://gitee.com/kolorbgg/devops.git
https://gitee.com/yushengjun644/mayikt-springboot.git
https://www.jianshu.com/p/e50cb1448a16
報錯則使用強制推:
git push -u origin +master #強制push
Jenkins全局工具配置
進入到jenkins容器中echo $JAVA_HOME
獲取java環境安裝地址
安裝Jenkins對應的Maven插件
“系統管理”——》“安裝插件”,點擊“可選插件”,找到Maven Integration
Jenkins新建任務構建SpringBoot
源碼管理:
Pre Steps
立即構建:
容器里查看:
docker exec -it dfe5e689b6c9 /bin/bash cd /var/jenkins_home/workspace/devops/target/
Jenkins實現后臺啟動任務-shell
Post Steps
#!/bin/bash #服務名稱 SERVER_NAME=devops # 源jar路徑,mvn打包完成之后,target目錄下的jar包名稱,也可選擇成為war包,war包可移動到Tomcat的webapps目錄下運行,這里使用jar包,用java -jar 命令執行 JAR_NAME=devops-1.0-SNAPSHOT # 源jar路徑 #/usr/local/jenkins_home/workspace--->jenkins 工作目錄 #demo 項目目錄 #target 打包生成jar包的目錄 JAR_PATH=/var/jenkins_home/workspace/devops/target # 打包完成之后,把jar包移動到運行jar包的目錄--->work_daemon,work_daemon這個目錄需要自己提前創建 JAR_WORK_PATH=/var/jenkins_home/workspace/devops/target echo "查詢進程id-->$SERVER_NAME" PID=`ps -ef | grep "$SERVER_NAME" | awk '{print $2}'` echo "得到進程ID:$PID" echo "結束進程" for id in $PID do kill -9 $id echo "killed $id" done echo "結束進程完成" #復制jar包到執行目錄 echo "復制jar包到執行目錄:cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH" cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH echo "復制jar包完成" cd $JAR_WORK_PATH #修改文件權限 chmod 755 $JAR_NAME.jar # java -jar $JAR_NAME.jar # 上面指的是前臺啟動 # 后臺啟動 BUILD_ID=dontKillMe nohup java -jar $JAR_NAME.jar &
sudo systemctl restart docker docker rm $(sudo docker ps -a -q) docker run -p 8080:8080 -p 8082:8082 -p 50000:50000 -v jenkins_data:/var/jenkins_home jenkinsci/blueocean
訪問:http://10.0.100.136:8082/getMayikt
原文鏈接:https://blog.csdn.net/qq_39578545/article/details/124094841
相關推薦
- 2022-10-25 Python繪制loss曲線和準確率曲線實例代碼_python
- 2022-10-13 解析django的csrf跨站請求偽造_python
- 2022-11-04 解析Android?Jetpack簡介_Android
- 2022-09-28 SQLServer常見數學函數梳理總結_MsSql
- 2022-04-16 pycharm實現設置自動的參數注釋標識_python
- 2022-04-22 自定義注解+Spel實現分布式鎖
- 2022-11-12 sass在react中的基本使用(實例詳解)_React
- 2022-08-21 Android自定義view貝塞爾曲線_Android
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支