.net core 持续构建简易教程

简介: 环境需求:jenkins和.netcore由于jenkins在真机上的部署比较麻烦,所以在这里我使用基于jenkins的Docker,只要任何一台运行docker的环境都可以进行以下的操作。docker run --restart always --name jenkins -v $PWD...

 

环境需求:jenkins和.netcore

由于jenkins在真机上的部署比较麻烦,所以在这里我使用基于jenkins的Docker,只要任何一台运行docker的环境都可以进行以下的操作。

docker run --restart always --name jenkins -v $PWD/jenkins_home:/var/jenkins_home -d -p 8080:8080 -p 50000:50000 daocloud.io/koukouge/jenkins-dotnet:1.0

可以到对应的目录查看文件

在windows上请注意授予docker文件访问的权限,如

打开浏览器,访问jenkins服务器,等待jenkins启动,并进入安装的界面。

 

进入安装界面,要求输入安装密匙,输入如下命令。获取密匙:

docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

紧接着是漫长的等待,如果安装页面出现错误,请重启服务,浏览器访问http://127.0.0.1:8080/restar

如下图,安装默认的的插件即可

部分插件会安装失败(很大部分原因是网络),后面进入到后台下载插件手动安装。

由于我实在是等不及,就直接刷新页面,直接进入注册账号密码,进入jenkins主界面。

由于默认安装的git就已经满足本次构建的需求,这里不介绍其他的插件使用,直接进入持续构建的主题。

首先是新建一个项目:

然后如下配置:

首先是源码可以从git,也可以从svn,甚至是文件夹,只需安装对应的插件即可。

这里需要说明的是,自动构建的规则依赖于具体的规则,在这里是只要matser分支有变化就会执行,又由于是部署在局域网内,无法使用Github的webhook,所以定义SCM每分钟去检查matser分支下是否有更新。

说回流程:

1.还原包(git restore)

2再生成对应的项目文件(cd /project;dotnet build)

3.执行对应项目的单元测试和集成测试(这一步非必要,属于持续测试的范围,测试失败会退出本次构建)

4.发布对应项目文件(dotnet publish)

如果仅仅持续构建是不够的,想要持续部署的话,需要自己进行客制化的操作。我个人的用法是使用Docker,借助像daoclou和阿里云等第三方服务,将生成的部署文件push到私有git上,第三方会帮你把容器构建和发布。

如下图:

 



本文采用 知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议
转载请注明来源: 张蘅水
我在开发者头条中还会每日分享不错的技术文章,搜索 356194 即可查看
目录
相关文章
|
1月前
|
开发框架 .NET 开发者
简化 ASP.NET Core 依赖注入(DI)注册-Scrutor
Scrutor 是一个简化 ASP.NET Core 应用程序中依赖注入(DI)注册过程的开源库,支持自动扫描和注册服务。通过简单的配置,开发者可以轻松地从指定程序集中筛选、注册服务,并设置其生命周期,同时支持服务装饰等高级功能。适用于大型项目,提高代码的可维护性和简洁性。仓库地址:<https://github.com/khellang/Scrutor>
52 5
|
1月前
|
开发框架 前端开发 JavaScript
ASP.NET Web Pages - 教程
ASP.NET Web Pages 是一种用于创建动态网页的开发模式,采用HTML、CSS、JavaScript 和服务器脚本。本教程聚焦于Web Pages,介绍如何使用Razor语法结合服务器端代码与前端技术,以及利用WebMatrix工具进行开发。适合初学者入门ASP.NET。
|
26天前
|
开发框架 搜索推荐 算法
一个包含了 50+ C#/.NET编程技巧实战练习教程
一个包含了 50+ C#/.NET编程技巧实战练习教程
90 18
|
25天前
|
前端开发 C# 开发者
.NET使用Umbraco CMS快速构建一个属于自己的内容管理系统
.NET使用Umbraco CMS快速构建一个属于自己的内容管理系统
36 12
|
26天前
|
缓存 算法 安全
精选10款C#/.NET开发必备类库(含使用教程),工作效率提升利器!
精选10款C#/.NET开发必备类库(含使用教程),工作效率提升利器!
64 12
|
27天前
|
开发框架 算法 中间件
ASP.NET Core 中的速率限制中间件
在ASP.NET Core中,速率限制中间件用于控制客户端请求速率,防止服务器过载并提高安全性。通过`AddRateLimiter`注册服务,并配置不同策略如固定窗口、滑动窗口、令牌桶和并发限制。这些策略可在全局、控制器或动作级别应用,支持自定义响应处理。使用中间件`UseRateLimiter`启用限流功能,并可通过属性禁用特定控制器或动作的限流。这有助于有效保护API免受滥用和过载。 欢迎关注我的公众号:Net分享 (239字符)
51 1
|
2月前
|
开发框架 .NET C#
在 ASP.NET Core 中创建 gRPC 客户端和服务器
本文介绍了如何使用 gRPC 框架搭建一个简单的“Hello World”示例。首先创建了一个名为 GrpcDemo 的解决方案,其中包含一个 gRPC 服务端项目 GrpcServer 和一个客户端项目 GrpcClient。服务端通过定义 `greeter.proto` 文件中的服务和消息类型,实现了一个简单的问候服务 `GreeterService`。客户端则通过 gRPC 客户端库连接到服务端并调用其 `SayHello` 方法,展示了 gRPC 在 C# 中的基本使用方法。
56 5
在 ASP.NET Core 中创建 gRPC 客户端和服务器
|
1月前
|
弹性计算 开发框架 安全
基于云效 Windows 构建环境和 Nuget 制品仓库进行 .Net 应用开发
本文将基于云效 Flow 流水线 Windows 构建环境和云效 Packages Nuget 制品仓库手把手教你如何开发并部署一个 .NET 应用,从环境搭建到实战应用发布的详细教程,帮助你掌握 .NET 开发的核心技能。
|
1月前
|
开发框架 缓存 .NET
GraphQL 与 ASP.NET Core 集成:从入门到精通
本文详细介绍了如何在ASP.NET Core中集成GraphQL,包括安装必要的NuGet包、创建GraphQL Schema、配置GraphQL服务等步骤。同时,文章还探讨了常见问题及其解决方法,如处理复杂查询、错误处理、性能优化和实现认证授权等,旨在帮助开发者构建灵活且高效的API。
37 3
|
2月前
|
Kubernetes Cloud Native Ubuntu
庆祝 .NET 9 正式版发布与 Dapr 从 CNCF 毕业:构建高效云原生应用的最佳实践
2024年11月13日,.NET 9 正式版发布,Dapr 从 CNCF 毕业,标志着云原生技术的成熟。本文介绍如何使用 .NET 9 Aspire、Dapr 1.14.4、Kubernetes 1.31.0/Containerd 1.7.14、Ubuntu Server 24.04 LTS 和 Podman 5.3.0-rc3 构建高效、可靠的云原生应用。涵盖环境准备、应用开发、Dapr 集成、容器化和 Kubernetes 部署等内容。
93 5