Jenkins编译.NET Core、.NET Framework项目并远程部署到IIS

yizhihongxing

Jenkins是一个流行的开源持续集成和持续交付工具,可以用于编译、测试和部署软件。在本文中,我们将介绍如何使用Jenkins编译.NET Core、.NET Framework项目并远程部署到IIS的完整攻略。

步骤

步骤1:安装Jenkins

首先,需要安装Jenkins。可以使用以下命令在Ubuntu上安装Jenkins:

wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
sudo sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get update
sudo apt-get install jenkins

在上面的命令中,我们使用 wget 命令下载Jenkins的GPG密钥,并将其添加到APT密钥库中。然后,我们将Jenkins存储库添加到APT源列表中,并更新APT缓存。最后,我们使用 apt-get 命令安装Jenkins。

步骤2:安装.NET Core SDK和.NET Framework

接下来,需要安装.NET Core SDK和.NET Framework。可以使用以下命令在Ubuntu上安装.NET Core SDK:

wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
sudo apt-get install -y apt-transport-https
sudo apt-get update
sudo apt-get install -y dotnet-sdk-5.0

在上面的命令中,我们使用 wget 命令下载Microsoft存储库的APT包,并使用 dpkg 命令安装该包。然后,我们更新APT缓存,并安装.NET Core SDK。

要安装.NET Framework,请按照Microsoft的官方文档进行操作。

步骤3:安装Jenkins插件

现在,我们已经安装了Jenkins和.NET Core SDK和.NET Framework,可以安装Jenkins插件。以下是必要的插件:

  • MSBuild插件
  • Publish Over SSH插件

可以使用Jenkins的插件管理器安装这些插件。

步骤4:创建Jenkins项目

接下来,需要创建Jenkins项目。以下是一个简单的示例:

  1. 在Jenkins主页上,单击“新建项目”按钮。
  2. 输入项目名称,并选择“自由风格项目”。
  3. 在“源代码管理”部分中,选择Git,并输入Git存储库的URL。
  4. 在“构建触发器”部分中,选择“轮询SCM”并设置轮询间隔。
  5. 在“构建环境”部分中,选择“Provide Node & npm bin/ folder to PATH”。
  6. 在“构建”部分中,单击“添加构建步骤”按钮,并选择“Windows Batch Command”。
  7. 在“Windows Batch Command”中,输入以下命令:
cd MyProject
dotnet restore
dotnet build

在上面的示例中,我们使用 cd 命令进入项目目录,并使用 dotnet restore 命令还原项目依赖项。然后,我们使用 dotnet build 命令构建项目。

  1. 在“构建后操作”部分中,单击“添加构建后操作”按钮,并选择“Send build artifacts over SSH”。
  2. 在“Send build artifacts over SSH”中,输入SSH服务器的IP地址、用户名和密码,并设置远程目录和文件路径。

示例说明

以下是两个示例说明,演示如何使用Jenkins编译.NET Core、.NET Framework项目并远程部署到IIS。

示例1:编译.NET Core项目并远程部署到IIS

以下是编译.NET Core项目并远程部署到IIS的步骤:

  1. 创建一个新的.NET Core Web应用程序。
dotnet new webapp -n MyWebApp

在上面的命令中,使用 dotnet new 命令创建一个新的Web应用程序。使用 -n 参数指定应用程序的名称为 MyWebApp

  1. 将应用程序推送到Git存储库。
git init
git add .
git commit -m "Initial commit"
git remote add origin <git-repo-url>
git push -u origin master

在上面的命令中,我们使用Git初始化仓库,并将应用程序推送到Git存储库。

  1. 在Jenkins中创建一个新项目。

在Jenkins主页上,单击“新建项目”按钮。输入项目名称,并选择“自由风格项目”。

  1. 配置Jenkins项目。

在“源代码管理”部分中,选择Git,并输入Git存储库的URL。在“构建触发器”部分中,选择“轮询SCM”并设置轮询间隔。在“构建环境”部分中,选择“Provide Node & npm bin/ folder to PATH”。在“构建”部分中,单击“添加构建步骤”按钮,并选择“Windows Batch Command”。在“Windows Batch Command”中,输入以下命令:

cd MyWebApp
dotnet restore
dotnet build

在“构建后操作”部分中,单击“添加构建后操作”按钮,并选择“Send build artifacts over SSH”。在“Send build artifacts over SSH”中,输入SSH服务器的IP地址、用户名和密码,并设置远程目录和文件路径。

  1. 启动Jenkins项目并测试应用程序。

在Jenkins主页上,单击项目名称,然后单击“立即构建”按钮。Jenkins将自动构建应用程序并将其部署到IIS。在Web浏览器中访问应用程序的URL,以确保应用程序正在运行。

示例2:编译.NET Framework项目并远程部署到IIS

以下是编译.NET Framework项目并远程部署到IIS的步骤:

  1. 创建一个新的.NET Framework Web应用程序。

使用Visual Studio创建一个新的.NET Framework Web应用程序。

  1. 将应用程序推送到Git存储库。
git init
git add .
git commit -m "Initial commit"
git remote add origin <git-repo-url>
git push -u origin master

在上面的命令中,我们使用Git初始化仓库,并将应用程序推送到Git存储库。

  1. 在Jenkins中创建一个新项目。

在Jenkins主页上,单击“新建项目”按钮。输入项目名称,并选择“自由风格项目”。

  1. 配置Jenkins项目。

在“源代码管理”部分中,选择Git,并输入Git存储库的URL。在“构建触发器”部分中,选择“轮询SCM”并设置轮询间隔。在“构建环境”部分中,选择“Provide Node & npm bin/ folder to PATH”。在“构建”部分中,单击“添加构建步骤”按钮,并选择“Windows Batch Command”。在“Windows Batch Command”中,输入以下命令:

cd MyWebApp
msbuild MyWebApp.csproj /p:Configuration=Release /p:OutputPath=C:\inetpub\wwwroot\MyWebApp

在“构建后操作”部分中,单击“添加构建后操作”按钮,并选择“Send build artifacts over SSH”。在“Send build artifacts over SSH”中,输入SSH服务器的IP地址、用户名和密码,并设置远程目录和文件路径。

  1. 启动Jenkins项目并测试应用程序。

在Jenkins主页上,单击项目名称,然后单击“立即构建”按钮。Jenkins将自动构建应用程序并将其部署到IIS。在Web浏览器中访问应用程序的URL,以确保应用程序正在运行。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Jenkins编译.NET Core、.NET Framework项目并远程部署到IIS - Python技术站

(0)
上一篇 2023年5月17日
下一篇 2023年5月17日

相关文章

  • C# lambda表达式原理定义及实例详解

    C# lambda表达式原理定义及实例详解 1. 什么是lambda表达式 Lambda表达式是一种能够把代码作为一个参数传递的匿名函数。它是从LISP借鉴过来的一个概念,相当于是在代码里面定义一个函数,然后直接把这个函数作为一个参数传递给另一个函数,简化了代码的书写。在C#中,Lambda表达式是Func<>或Action<> 或 …

    C# 2023年6月7日
    00
  • C#特性-对象集合初始化器介绍

    C#特性-对象集合初始化器是一种简化代码编写的特性,可以快速且易于阅读地创建和初始化对象和集合。下面我们来详细讲解它的使用方法: 1. 对象初始化器 在使用对象初始化器的时候,可以直接在创建对象的同时,对其字段和属性进行赋值。下面是一个示例: public class Person { public string Name { get; set; } pub…

    C# 2023年6月1日
    00
  • 关于dotnet 替换 ASP.NET Core 的底层通讯为命名管道的 IPC 库的问题

    dotnet替换ASP.NET Core的底层通讯为命名管道的IPC库 在ASP.NET Core中,我们可以使用Inter-Process Communication(IPC)来实现进程间通信。默认情况下,ASP.NET Core使用Socket作为底层通信机制。但是,我们也可以使用命名管道来替换Socket。在本攻略中,我们将介绍如何使用命名管道来替换S…

    C# 2023年5月16日
    00
  • asp.net自定义控件回发数据实现方案与代码

    ASP.NET自定义控件是一种可重用的控件,通过自定义控件,可以实现业务逻辑的封装和统一维护,从而提高代码的可维护性和可扩展性。在自定义控件中,经常需要实现回发数据的功能,在以下内容中将会介绍ASP.NET自定义控件回发数据实现方案与代码的详细攻略。 1. 实现PostBack回发数据 ASP.NET自定义控件的实现一般包括两个部分:控件的外观和控件的行为。…

    C# 2023年5月31日
    00
  • 通用的CRUD之LiteDB

    前言 你要开发一个系统,是不是首要任务是先建库,建表,建字段,既所谓的数据建模(听起来高大上一点,数据建模也确实是个烧脑的活),要费不少功夫。不知你是否遇到过这样的场景。A产品有3个测试参数,B产品有6个测试参数,而且值和类型都各不相同,用SQL你要怎么建表呢?有人会说这简单“参数名,参数值两列搞定”,NO!数据类型考虑了吗,数据量考虑了吗?有人又说”每个参…

    C# 2023年5月6日
    00
  • C#实现基于任务的异步编程模式

    C#实现基于任务的异步编程模式 什么是基于任务的异步编程模式(TAP)? 基于任务的异步编程模式是一种编写异步代码的方式,主要基于Task类。TAP可以简化异步编程过程,使代码更加清晰简洁。 在TAP中,我们将一个异步方法定义为返回一个Task对象的方法。该方法在执行完异步操作后,将结果存储在Task对象中,然后将该对象返回给调用者。 如何实现基于任务的异步…

    C# 2023年5月15日
    00
  • C#简单连接sql数据库的方法

    关于“C#简单连接SQL数据库的方法”的完整攻略,我将给予如下详细讲解。 1. 引入命名空间 在C#程序中,首先需要引入System.Data.SqlClient这个命名空间。 using System.Data.SqlClient; 2. 创建连接对象 接下来需要创建一个连接对象SqlConnectionStringBuilder,通过它来构建连接字符串。…

    C# 2023年6月1日
    00
  • Java里的static import使用小结

    Java里的static import使用小结 在Java中,我们可以使用static import语句来导入静态成员,以便在代码中直接使用它们,而无需使用类名或接口名。本文将提供详细的“Java里的static import使用小结”的完整攻略,包括如何使用static import语句,以及两个示例。 使用static import语句 使用static…

    C# 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部