.Net Core 商城微服务项目系列(九):使用Jenkins构建自动发布
2024-09-01 08:45:47
1.首先通过Docker运行Consul,并保证各个服务都成功注册:
然后运行jenkins,对MI.Web项目进行发布构建,至于怎么配置之前已经写过了,和上一篇一模一样,这里贴下批处理命令:
cd "%WORKSPACE%\MI.Service.Web"
dotnet restore
dotnet build
dotnet publish -o D:\PublishFile\MI.Web
配置完成后我们需要修改下NuGet配置,因为项目里用的NuGet包是我们通过Docker搭建的,所以我们需要配置下NuGet包源地址,这是因为Jenkins在构建的时候会自动从NuGet拉取各个dll,配置方式有两种:
1.在 %APPDATA%\NuGet\ 这个文件路径下有一个全局的NuGet.Config,在其中加入自己的包源地址:
2.第二种方式是在项目里添加NuGet.Config文件,添加后会默认覆盖第一种方法里的全局配置:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<packageSources>
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="" />
<add key="MI.Project" value="http://47.99.92.76:8090/" />
</packageSources>
<packageRestore>
<add key="enabled" value="True" />
<add key="automatic" value="True" />
</packageRestore>
<bindingRedirects>
<add key="skip" value="False" />
</bindingRedirects>
<packageManagement>
<add key="format" value="" />
<add key="disabled" value="False" />
</packageManagement>
<system.webServer>
<directoryBrowse enabled="true" />
</system.webServer>
</configuration>
完成后提交代码到Git,然后在Jenkins中点击立即构建:
构建成功!
然后我们还需要部署下服务,与上面Web部署基本没什么区别,唯一区别是我们的多个服务文件在同一个Git仓库里,命令稍微变化下,如下:
cd "%WORKSPACE%\MI.Service.ShopCar"
dotnet restore
dotnet build
dotnet publish -o F:\Publish\MI.Service.ShopCar
最终构建完成结果:
自动化发布有利于多项目组开发,规范发布流程,使开发人员专注于业务,同时避免发布时发生的问题。
最新文章
- Step by step 活动目录中添加一个子域
- Django提交POST表单“CSRF verification failed. Request aborted”问题的解决
- web.xml中配置固定数据
- MATLAB信号与系统分析(五)&mdash;&mdash;连续时间信号的频谱分析
- 【MVC】ASP.NET MVC HtmlHelper用法大全
- [HDOJ2830]Matrix Swapping II(胡搞)
- modifytime是一个神奇的column name----这边文章是错的totally,因为我的实验不彻底。timestamp属性很神奇,头一个timestamp,会自动的成DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
- TD数量不确定时如何让其宽度平均分布
- linux网络编程--跳水send和recv
- 在SQL2008中,如何让id自动生成并自动递增?如何让时间默认生成?
- 关于文件读写IDL
- 部署项目时遇到的问题---IIS7.X配置ASP.NET MVC4
- iReport默认参数和变量的含义解析【转】
- 小白的Python之路 day4 json and pickle数据标准序列化
- 彻底弄懂CommonJS和AMD/CMD!
- swoole_proces实现多进程
- 爬虫系列二(数据清洗--->;bs4解析数据)
- oralce执行计划
- 微信小程序开发笔记02
- Spark Scheduler内部原理剖析
热门文章
- unicode的编码与解码
- 2019DX#5
- CodeForces 1083 E The Fair Nut and Rectangles 斜率优化DP
- hdu 5969 最大的位或(贪心)
- Error executing DDL via JDBC Statement 导致原因之一:列名使用了sql关键字
- Java连载27-有返回值的方法注意点
- == != === equals() 区别
- MySQL基础/数据库和表的设计
- 使用ECMAScript 6 模块封装代码
- java架构之路-(源码)mybatis的一二级缓存问题