gitflow和jekins使用

准备

首先我们先来使用jenkins

先去登录。然后创建一个任务

general里面需要写关于项目的描述

填写版本号

配置nacos的服务注册和服务发现的ip

配置服务端口

配置服务名称

配置git地址和分支

每次构建时候将上一次构建的文件删除


powershell 复制代码
#!/bin/bash
# 微服务名称
SERVER_NAME=${serverName}
# 服务版本
SERVER_VERSION=${version}
# 服务端口
SERVER_PORT=${port}
# 源jar名称,mvn打包之后,target目录下的jar包名称
JAR_NAME=$SERVER_NAME-$SERVER_VERSION
# jenkins下的目录
JENKINS_HOME=/var/jenkins_home/workspace/$SERVER_NAME
#进入jenkins目录
cd $JENKINS_HOME
# 修改文件权限
chmod 755 target/$JAR_NAME.jar
#输出docker版本
docker -v
echo "---------停止容器($SERVER_NAME)---------"
docker stop $SERVER_NAME
echo "---------删除容器($SERVER_NAME)---------"
docker rm $SERVER_NAME
echo "---------删除镜像($SERVER_NAME:$SERVER_VERSION)---------"
docker rmi $SERVER_NAME:$SERVER_VERSION
echo "---------构建新镜像($SERVER_NAME:$SERVER_VERSION)---------"
docker build -t $SERVER_NAME:$SERVER_VERSION .
echo "---------运行服务---------"
docker run -d -p $SERVER_PORT:8080 --name $SERVER_NAME -e SERVER_PORT=8080 -e SPRING_CLOUD_NACOS_DISCOVERY_IP=${SPRING_CLOUD_NACOS_DISCOVERY_IP} -e  SPRING_CLOUD_NACOS_DISCOVERY_PORT=${port} $SERVER_NAME:$SERVER_VERSION

最后带着大家总结一下流程,首先需要先去登录一下jenkins,然后去新建任务,先去填写整体概述,然后去设置git参数,分支名称,然后设置字符参数,首先先来设置版本号,默认是1.0-SNAPSHOT,接下来是配置nacos的ip,配置端口和配置服务名称,然后去配置git仓库的地址和分支,构建环境,ssh连接和maven调用,最后是部署脚本

但是这样还不能达到我们真正实现自动化动态部署效果

所以接下来,我继续为大家带来怎么使用

这里需要选择第一个

powershell 复制代码
url格式:http(s)://<< jenkins-server >>/gogs-webhook/?job=<< jobname >>

这里面可以进行替换,第一个占位是gogs的地址,第二个是在jinkens里面的任务名称

上面两证图片的密钥需要一致,这样的话我们的代码在更新的时候jinkens会自动拉取更新。

相关推荐
xifangge20255 小时前
AGENTS.md 怎么写?涵盖 Java、Python、Vue、Go 的 8 套开箱即用模板
java·vue.js·python
Wang's Blog5 小时前
Java框架快速入门: Spring Security+OAuth2之云服务集成与多因子认证设计
java·开发语言·spring
liangsheng_g6 小时前
SpringAOP拦截器链递归与事务钩子补偿源码实战
java·spring
SL_staff6 小时前
制造业私有化文档平台的技术实践:从知识孤岛到可追溯知识资产
java·spring·开源
SL_staff7 小时前
3天上线OKR系统:一名HR与1名工程师如何用JVS完成全栈交付
java·低代码·开源
wzdark9 小时前
基于链表的内存池设计与内存复用机制4
java·数据结构·链表
cnkeysky9 小时前
idea 中的 maven 项目重新加载子模块
java·idea
Escalating_xu9 小时前
【System V 信号量】从 P/V 原语到 Builder 封装:写出可控、可清理的进程互斥组件
java·linux·开发语言·jvm
今天AI了吗9 小时前
什么是 AI Agent?它与直接调用大模型 API 有何区别
java·网络·人工智能·架构·java-ee
隐退山林9 小时前
JavaEE进阶:SpringAOP
java·java-ee