網(wǎng)站首頁 編程語言 正文
原理:Jenkins構(gòu)建(開發(fā)提交代碼到代碼管理平臺(tái)),Jenkins處理(Jenkins獲取遠(yuǎn)程代碼,自動(dòng)將源代碼實(shí)現(xiàn)打包,執(zhí)行shell腳本啟動(dòng))。
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配置鏡像加速器
配置鏡像加速器 針對(duì)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環(huán)境
1、使用docker安裝jenkins
docker run -p 8080:8080 -p 50000:50000 -v jenkins_data:/var/jenkins_home jenkinsci/blueocean
2、進(jìn)入到docker容器查看密鑰
docker exec -it dfe5e689b6c9 /bin/bash
cat /var/jenkins_home/secrets/initialAdminPassword
3、打開8080網(wǎng)頁并輸入密鑰
970cbd92daba4a54ad593ff4c44449e2
將本地項(xiàng)目上傳到碼云代碼管理平臺(tái)
https://gitee.com/kolorbgg/devops.git
https://gitee.com/yushengjun644/mayikt-springboot.git
https://www.jianshu.com/p/e50cb1448a16
報(bào)錯(cuò)則使用強(qiáng)制推:
git push -u origin +master #強(qiáng)制push
Jenkins全局工具配置
進(jìn)入到j(luò)enkins容器中echo $JAVA_HOME
獲取java環(huán)境安裝地址
安裝Jenkins對(duì)應(yīng)的Maven插件
“系統(tǒng)管理”——》“安裝插件”,點(diǎn)擊“可選插件”,找到Maven Integration
Jenkins新建任務(wù)構(gòu)建SpringBoot
源碼管理:
Pre Steps
立即構(gòu)建:
容器里查看:
docker exec -it dfe5e689b6c9 /bin/bash cd /var/jenkins_home/workspace/devops/target/
Jenkins實(shí)現(xiàn)后臺(tái)啟動(dòng)任務(wù)-shell
Post Steps
#!/bin/bash #服務(wù)名稱 SERVER_NAME=devops # 源jar路徑,mvn打包完成之后,target目錄下的jar包名稱,也可選擇成為war包,war包可移動(dòng)到Tomcat的webapps目錄下運(yùn)行,這里使用jar包,用java -jar 命令執(zhí)行 JAR_NAME=devops-1.0-SNAPSHOT # 源jar路徑 #/usr/local/jenkins_home/workspace--->jenkins 工作目錄 #demo 項(xiàng)目目錄 #target 打包生成jar包的目錄 JAR_PATH=/var/jenkins_home/workspace/devops/target # 打包完成之后,把jar包移動(dòng)到運(yùn)行jar包的目錄--->work_daemon,work_daemon這個(gè)目錄需要自己提前創(chuàng)建 JAR_WORK_PATH=/var/jenkins_home/workspace/devops/target echo "查詢進(jìn)程id-->$SERVER_NAME" PID=`ps -ef | grep "$SERVER_NAME" | awk '{print $2}'` echo "得到進(jìn)程ID:$PID" echo "結(jié)束進(jìn)程" for id in $PID do kill -9 $id echo "killed $id" done echo "結(jié)束進(jìn)程完成" #復(fù)制jar包到執(zhí)行目錄 echo "復(fù)制jar包到執(zhí)行目錄:cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH" cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH echo "復(fù)制jar包完成" cd $JAR_WORK_PATH #修改文件權(quán)限 chmod 755 $JAR_NAME.jar # java -jar $JAR_NAME.jar # 上面指的是前臺(tái)啟動(dòng) # 后臺(tái)啟動(dòng) 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
相關(guān)推薦
- 2022-01-05 解決:啟動(dòng)Redis報(bào)錯(cuò):`Could not create server TCP listenin
- 2022-05-06 Docker遠(yuǎn)程連接設(shè)置的實(shí)現(xiàn)示例_docker
- 2022-08-23 .net?core中的System.Buffers命名空間_基礎(chǔ)應(yīng)用
- 2022-07-04 C#操作配置文件app.config、web.config增刪改_C#教程
- 2022-03-09 android?studio數(shù)據(jù)存儲(chǔ)建立SQLite數(shù)據(jù)庫實(shí)現(xiàn)增刪查改_Android
- 2021-12-06 Ubuntu編譯內(nèi)核模塊,內(nèi)容體現(xiàn)系統(tǒng)日志中_Linux
- 2022-06-10 C語言?模擬實(shí)現(xiàn)strcpy與strcat函數(shù)詳解_C 語言
- 2022-10-13 Python?數(shù)據(jù)分析教程探索性數(shù)據(jù)分析_python
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對(duì)象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支