首页 > 其他分享 >.net core(微服务学习)-使用Jenkins基于流水线 发布 .net Core代码

.net core(微服务学习)-使用Jenkins基于流水线 发布 .net Core代码

时间:2023-12-04 19:45:03浏览次数:47  
标签:core git Core -- 拉取 windows jenkins Jenkins net

Jenkins是大家常见的CI/CD工具,如果线上需要发布更新代码可以通过jenkins进行操作

1.下载Jenkins包

首先windows下和Liunx下都可以通过war包进行部署

Jenkins download and deployment

 

windows启动

windows 下使用一下命令保存为bat 脚本双击即可启动

java -jar -Dhudson.model.DownloadService.noSignatureCheck=true -jar jenkins.war --httpPort=8095 --prefix=/jenkins

 

liunx启动

liunx编写为sh脚本即可启动

nohup java -jar -Dhudson.model.DownloadService.noSignatureCheck=true -jar jenkins.war --httpPort=8095 --prefix=/jenkins

 

其参数中  --httpPort=8095 为代表启动端口  --prefix=/jenkins为后缀地址启动成功后访问 ip:8095/jenkins可见以下界面

 

由于我们这里部署的主机为Liunx主机,为保证双节点,并且打包程序中有Framwork的winform程序需要windwos节点我们这里新增windows节点

在windows主机使用 cmd执行命令即可

windows主机节点已经被添加

 

2.使用Jenkins  CI/CD发布

2.1软件包依赖

首先要打包软件需要在部署的主机里面安装了dotnet的SDK和git

查询命令如下所示

dotnet --info

git --version

确保依赖项目按照完成即可通过Jenkins的流水线进行打包了

2.2 通过Jenkins打包dotnet程序

2.2.1添加凭证

通过GIT拉去代码需要凭证

添加Jenkins凭证方式如下:

 

 

添加git拉取的账号和密码

添加完成后会有一个ID号,后续流水线配置会用到

 

2.3流水线配置

新建一个流水线配置

 

 

使用以下代码即可拉取git的仓库

// 代码仓库地址
def git_address = "https://gitee.com/xxxxxx/xxxxxx.git"

// git的账号和密码凭据ID
def git_auth = "xxxxx-93f9-47e8-ab0d-xxxxx"

pipeline {
    environment{
        out_dit="/root/build"
    }
    agent any
    stages { 
        stage('环境验证') { 
            steps { 
               sh 'dotnet --info'
            }
        }
        stage('拉取源码') { 
            steps { 
               echo '开始拉取代码'
               git branch:branch,credentialsId:git_auth,url:git_address
               echo '拉取完成'
            }
        }
    }
}

其中可拉取的分支配置了配置项

打包可自定义分支打包

标签:core,git,Core,--,拉取,windows,jenkins,Jenkins,net
From: https://www.cnblogs.com/JockMary/p/17836158.html

相关文章

  • Linux发布ASPNetCore 项目 IIS 部署
    Linux系统发布ASP.ENTCore项目Linux系统-CentOS7---基于虚拟机来安装IP:192.168.1.97安装教程链接:https://pan.baidu.com/s/1gI93YwptrWdPKHBh5fLNqQ?pwd=6666提取码:6666我们的ASP.ENTCore应用程序是需要跑在.NETCore环境上面的。所以我们就需要先安装.NETCore......
  • 基于DotNetty实现一个接口自动发布工具 - 通信实现
    基于DotNetty实现通信DotNetty:是微软的Azure团队,使用C#实现的Netty的版本发布。是.NET平台的优秀网络库。项目介绍OpenDeploy.Communication类库项目,是通信相关基础设施层Codec模块实现编码解码Convention模块定义约定,比如抽象的业务Handler,消息载体Ne......
  • MKL.NET:为.NET开发者提供高性能数学计算支持的开源库
    MKL.NET:为.NET开发者提供高性能数学计算支持的开源库编程乐趣​ ​关注他 你经常看TA的内容MKL是英特尔推出的一套功能强大、性能优化的数学库,主要是采用C/C++编写的。今天给大家推荐一个MKL的.Net版本,让我们无需与C/C++打交道,方便我们集成到应......
  • go network poller 一
    网络基础协议架构tcp链接假如需要开发者去实现一套新的网络协议(例如redis的resp),是基于TCP的,那tcp这层的协议,是否需要开发者自己去实现?这层如果自己实现,其实很复杂,会涉及很多算法相关.因此,出现了socket对传输层进行了抽象,开发者不需要关注传输层具体......
  • 基于DotNetty实现一个接口自动发布工具 - 背景篇
    故事背景小公司,单体项目,接口和页面都在一起,生产和测试环境都是Windows服务器和IIS,本地编译完成,把相关的页面和程序集拷贝到服务器上,尤其是涉及到多个页面,一个个页面找到对应的位置,再到服务器上找到对应的位置拷贝进去,甚至还有备份等操作,不胜其烦,因为历史遗留原因,......
  • 基于Kubernetes构建持续集成
    GitLab+Jenkins+Kubernetes1要求:2安装Jenkins环境3安装Gitlab环境4连接Jenkins和Gitlab5配置Jenkins连接maven6配置CI/CD1要求:该公司决定采用GitLab+Jenkins来构建CICD环境,以缩短新功能开发上线周期,及时满足客户的需求,实现DevOps的部分流程,来减轻部署运维的负担,实现......
  • 在net中通过Autofac实现AOP的方法及实例详解
     在本示例中,我们将使用Autofac和AspectC(Autofac.Extras.DynamicProxy2)来演示如何实现AOP(面向切面编程)。我们将创建一个简单的C#控制台应用程序,并应用AOP以解决日志记录的问题。首先,让我们讨论AOP的用途和目标。AOP(面向切面编程)的用途AOP是一种编程范式,旨在解决横切关注点(cro......
  • 在NET8中使用简化的 AddJwtBearer 认证
    开发环境系统版本:win10.NETSDK:NET8开发工具:vscode参考引用:使用dotnetuser-jwts管理开发中的JSONWeb令牌注意:以下示例中的端口、token等需替换成你的环境中的信息创建项目运行以下命令来创建一个空的Web项目,并添加Microsoft.AspNetCore.Authentication.JwtBea......
  • 聊一聊 .NET高级调试 中的一些内存术语
    一:背景1.讲故事在高级调试的旅程中,经常会有一些朋友问我什么是工作集(内存),什么是提交大小,什么是VirtualSize,什么是WorkingSet。。。截图如下:既然有很多朋友问,这些用口头也不怎么好描述,刚好上午有时间就系统的聊一下吧。二:内存术语解读1.VirtualSize是什么可......
  • C#12新功能(.NET 8)有哪些?
    前言作为.NET8发布会的一部分,微软于11月14日发布了C#12的新功能,这也是目前.NET的最新版本。正如之前公布的那样,最显著的改进包括了集合表达式、主构造函数、任何类型的别名以及lambda表达式中参数提供默认值。主构造函数C#12扩展了主构造函数,现在可以在任何class和struct中创......