.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(C#)实现功能强大的时间日期处理类完整实例

    asp.net(C#)实现功能强大的时间日期处理类完整实例 引言 在程序开发过程中,日期和时间处理是非常常见且重要的操作,然而C#在对时间日期的处理上提供了很多内置的功能和类,但是并不一定适合所有的场景。因此,本文介绍如何实现功能强大的时间日期处理类,让我们的开发变得更加高效。 步骤 创建一个新的C#类,在类中定义所需要的方法和变量。 “`csharp p…

    C# 2023年6月1日
    00
  • C#预处理指令之#line,#pragma warning 详细解析

    C#预处理指令之#line,#pragma warning 详细解析 在C#中,预处理指令(Preprocessor directives)是以井号 (#) 开头的,用于控制编译过程的指令。预处理指令会在编译代码之前就被处理,与实际代码无关。这些指令用于给编译器提供附加的信息或指令,以执行不同的编译选项。 本文将详细讲解两条常用的预处理指令:#line 和 …

    C# 2023年6月1日
    00
  • Unity 从UI中拖拽对象放置并拖动效果 附demo

    Unity 中从UI中拖拽对象放置并拖动是一种常见的交互方式,在一些游戏和应用程序中都可以看到这种效果。以下是实现此效果的攻略: 准备阶段 在开始实现之前,首先需要准备好以下材料: Unity 编辑器:用于创建界面和脚本编写。 一个 Unity 项目:用于实现代码的编写和测试。 编辑器中的基础 UI 元素:例如基础按钮、文本、图像等。 UI 元素用于拖拽的物…

    C# 2023年6月3日
    00
  • 使用C# 判断给定大数是否为质数的详解

    使用C# 判断给定大数是否为质数的详解 判断一个大数是否为质数是一个常见的问题。早期的解决方式是通过试除法,即将该数不断除以比它小的所有正整数,如果在这些正整数中存在约数,那么这个数就不是质数。 但是,这种试除法效率极低,在判断大数时会消耗大量时间和资源。因此,我们需要更快速且高效的方式来判断大数是否为质数。 下面我们将介绍一种使用“Miller-Rabin…

    C# 2023年6月7日
    00
  • C#中日期时间的简单操作

    C#中日期时间的简单操作 在C#中,日期时间类型是一种非常常见的数据类型。C#提供了许多方法和属性来操作和处理日期时间,使得处理日期时间变得十分方便。接下来将介绍C#中日期时间的简单操作攻略。 获取当前时间 可以使用DateTime.Now属性来获取当前的日期时间。例如: DateTime now = DateTime.Now; 获取当前时间的各个部分 可以…

    C# 2023年5月15日
    00
  • C# Path.GetFullPath(string path):获取指定路径的完整路径

    Path.GetFullPath(string path)是C#中的一个静态方法,用于将相对路径转换为绝对路径。具体来说,它根据指定的相对路径和当前工作目录,返回一个完全限定的绝对路径。 使用方法: string fullPath = Path.GetFullPath("relative/path.txt"); 其中参数relative/…

    C# 2023年4月19日
    00
  • .NET Core跨平台串口通讯使用SerialPortStream基础类库问题解决

    .NET Core跨平台串口通讯使用SerialPortStream基础类库问题解决 串口通讯在很多行业应用中都有着重要的地位,而串口通讯的跨平台解决方案在.NET Core 3.0之后,就有了更好的支持。本文将介绍如何使用SerialPortStream基础类库进行.NET Core跨平台串口通讯,并解决其中的常见问题。 安装SerialPortStrea…

    C# 2023年6月3日
    00
  • Ibatis.net结合oracle批量删除实现代码

    下面是详细讲解Ibatis.net结合oracle批量删除实现代码的完整攻略。 1. 环境准备 在开始实现之前,我们需要准备以下环境:- Ibatis.net框架- Oracle数据库 2. Ibatis.net配置 在Ibatis.net配置文件中,我们需要添加数据库连接以及对应的Mapper: <configuration> <data…

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