.net6 在中标麒麟下的安装

尝试了下.net6在信创环境下的安装和部署

信创服务器,CPU:ARM64,操作系统:中标麒麟 v10,网络环境:政务网(无法连接外网)

1、下载 .net 6 SDK 6.0.408 Arm64二进制文件。https://dotnet.microsoft.com/zh-cn/download/dotnet/6.0

2、在服务器/home目录下创建两个新目录 ,test 和 dotnet;

3、上传压缩包到服务器 /home/test,可通过堡垒机SFTP上传;

4、进入/home/test目录,执行:tar zxf dotnet-sdk-6.0.408-linux-x64.tar.gz -C /home/dotnet,将文件解压至 /home/dotnet 目录;

5、设置环境变量, 编辑/etc/profile增加以下两行:

  export DOTNET_ROOT=/home/dotnet

  export PATH=$PATH:/home/dotnet

  用不习惯vim,可以把文件下载到电脑上用记事本编辑。

6、查看安装情况,执行:source /etc/profile  重新加载配置文件。

7、执行: dotnet --info 查看.net安装情况。出现下图则说明安装配置成功。

.net6 在中标麒麟下的安装

8、使用VS新建一个ASP.NET Core WebAPI项目(项目名为:kytest),项目会自动生成一个包含天气预报API接口,不用修改直接创建运行就行。修改appsettings.json配置文件指定端口(服务器只开了80-90端口,所以要把默认的5000端口改成86端口)。

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft.AspNetCore": "Warning"
    }
  },
  "AllowedHosts": "*",
  "Kestrel": {
    "Endpoints": {
      "Http": {
        "Url": "http://*:86"
      }
    }
  }
}

9、正常发布,目标运行时选:linux-arm64。

.net6 在中标麒麟下的安装

10、到服务器的/home目录下新建个 wwwroot目录,把发布目标位置文件夹下的所有文件上传到wwwroot目录。

11、进入wwwroot目录,执行 dotnet kytest.dll,出现如下画面说明运行正常。

.net6 在中标麒麟下的安装

 12、用浏览器访问 http://xx.xx.xx.xx:86/WeatherForecast,能正常返回接口数据且每次刷新页面数据会随机变动说明发布成功。

.net6 在中标麒麟下的安装

关于防火墙设置:

如发现在服务器上可以通过 curl http://localhost:86/weatherforecast 正常访问接口但通过浏览器无法访问,请检查防火墙设置。

.net6 在中标麒麟下的安装

 查看状态:systemctl status firewalld 查看防火墙状态 ,显示active(running)说明防火墙已开启。

.net6 在中标麒麟下的安装

端口开放情况查询:firewall-cmd --list-all 可查看全部已开放端口。

查询单个端口:fireewall-cmd -query-port=[端口]/tcp,查看指定端口是否开放,yes为已开放,no为未开放

.net6 在中标麒麟下的安装

开放端口:firewall-cmd --permanent --add-port=[端口]/tcp ,执行后返回success。

添加完端口后重启防火墙让设置生效:systemctl restart firewalld

 

原文链接:https://www.cnblogs.com/xzg2022/archive/2023/04/17/17320801.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:.net6 在中标麒麟下的安装 - Python技术站

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

相关文章

  • ASP.NET 谨用 async/await

    ASP.NET是一种在Web应用程序中使用的框架,其中包含了许多可用于编写可执行的应用程序代码的内置功能。其中一个特性是使用async/await异步编程模式。 Async/await允许在Web应用程序中执行耗时长的操作而不会阻塞线程。这是由于该方法异步执行,当操作执行完毕时,将使用已处理请求的线程调用回调。下面是使用async/await在ASP.NET…

    C# 2023年5月15日
    00
  • C#中string用法实例详解

    C#中string用法实例详解 什么是string string是C#中的基础数据类型之一,它用于表示文本字符串。可以用 string 定义字符串变量。 常见的string使用方法 字符串拼接 在C#中,我们可以用+号操作符来实现字符串的拼接: string str1 = "hello"; string str2 = "worl…

    C# 2023年5月31日
    00
  • C#中Html.RenderPartial与Html.RenderAction的区别分析

    下面是详细解释“C#中Html.RenderPartial与Html.RenderAction的区别分析”的完整攻略: 什么是Html.RenderPartial和Html.RenderAction? 两者都可以用于在视图中呈现另一个视图或控制器的操作。 Html.RenderPartial Html.RenderPartial可视为将一个视图作为另一个视图…

    C# 2023年5月31日
    00
  • C#调用RabbitMQ实现消息队列的示例代码

    下面我会给出详细讲解“C#调用RabbitMQ实现消息队列”的完整攻略,其中包含两条示例代码。具体请见下文: 什么是RabbitMQ? RabbitMQ是一个开源的消息中间件,它采用的AMQP协议为应用程序提供可靠的异步消息传输。 RabbitMQ的优势 使用RabbitMQ可以将消息发送给一个或多个接收者,并使用消息队列保存等待处理的消息。这种方式有下面的…

    C# 2023年5月15日
    00
  • C# DateTime.ToString根据不同语言生成相应的时间格式

    C#中的DateTime.ToString方法可以将日期时间格式化为指定的字符串。在不同的语言环境下,日期时间的格式也会有所不同。本文将介绍如何使用C#的DateTime.ToString方法根据不同语言生成相应的时间格式,并提供两个示例程序。 示例一:根据不同语言生成相应的时间格式 以下是一个C#程序的示例,它演示了如何根据不同语言生成相应的时间格式: u…

    C# 2023年5月15日
    00
  • 基于C#中XmlReader读取Xml的深入分析

    基于C#中XmlReader读取Xml的深入分析 什么是XmlReader? XmlReader是一种用于读取XML文件的轻量级非缓存类,可以高效地处理大型XML文件,并且可供C#程序员使用。该类实现了更快的XML文件分析,使得它更适合用于大型XML文件。此外,与XDocument类相比,XmlReader类仅支持单向读取,并且不会保留XML文件的部分或全部…

    C# 2023年6月1日
    00
  • C#生成唯一值的方法汇总

    生成GUID GUID是一种可以用于生成全球唯一标识符的算法,具有足够的随机性和唯一性。在C#中可以通过Guid.NewGuid()方法生成GUID。 Guid guid = Guid.NewGuid(); string uniqueId = guid.ToString(); 通过时间戳生成唯一值 根据当前时间计算其与一个固定日期之间的时间间隔的毫秒数,将其…

    C# 2023年6月1日
    00
  • C#中数组、ArrayList和List三者的区别详解及实例

    下面是详细讲解 “C#中数组、ArrayList和List三者的区别详解及实例” 的完整攻略。 1. 数组 1.1 定义方式 数组是同一种数据类型的元素的集合,它的大小是固定的。 在 C# 中,我们可以通过以下方式定义和初始化一个数组: int[] arr1 = new int[5]; // 定义一个包含 5 个元素的 int 数组 int[] arr2 =…

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