欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

鲲鹏来了,在EulerOS试用.NETCore-3.1

程序员文章站 2022-06-10 16:05:04
EulerOS其实出来有一段时间了,一直在关注,单是仅仅也只是停留在观望的阶段,目前还没有接入的打算;正好看到园子里的兄弟分享了华为云免费试用的活动后,难捺激动的心情,我马上去申请试用了一台服务器。 ......

在euleros试用.netcore-3.1

前言

euleros其实出来有一段时间了,一直在关注,单是仅仅也只是停留在观望的阶段,目前还没有接入的打算;正好看到园子里的兄弟分享了华为云免费试用的活动后,难捺激动的心情,我马上去申请试用了一台服务器。先来看看官方的介绍(chuixu)

euleros是具备高安全性、高可扩展性、高性能、开放的企业级linux操作系统平台,能够满足客户从传统it基础设施到云计算服务的各种需求。euleros对arm64架构提供全栈支持,打造完善的从芯片到应用的一体化生态系统。

对于一个服务器操作系统来说,这个介绍可以说很到位了,安全、高性能、开放(据说年底开源?),基于linux,再加上华为全家桶,其实看起来还是蛮诱人的了。

申请试用

申请试用的地址是:https://activity.huaweicloud.com/free_test/index.html,我看到试用居然有奖?看了详细介绍后是要写试用体验,没关系,中奖那都是顺便的事,再说 mate20 还是挺香的不是。

鲲鹏来了,在EulerOS试用.NETCore-3.1

如果是打算写体验报告的同学,一定要选择 kcl,然后选择操作系统:euleros,这些准备工作完成,直接去支付后进入控制台等待主机创建完成就可以了

鲲鹏来了,在EulerOS试用.NETCore-3.1

等待的过程有点无聊,大家可以去看看 euleros 的安装文档:https://obs.cn-north-1.myhuaweicloud.com/hweuleros/doc/cn/2.3/euleros%20v2.0sp3%20%e5%ae%89%e8%a3%85%e6%8c%87%e5%8d%97%ef%bc%88for%20arm64%ef%bc%89.pdf

一旦主机创建完成,将会更新主机列表,会出现远程ip地址和远程登录按钮将变成可用状态。

远程登录

管理控制台界面,通过点击“远程登录”按钮进行 web 控制台登录,输入账号密码后将出现属性的黑色命令行控制台界面,有一个好习惯大家要坚持做,就是安装完成后,先看看系统相关信息

鲲鹏来了,在EulerOS试用.NETCore-3.1

输入 cat /proc/version

cat /proc/version 
linux version 4.19.36-vhulk1905.1.0.h276.eulerosv2r8.aarch64 (abuild@szxrtosci10000) (gcc version 7.3.0 (gcc)) #1 smp mon apr 1 00:00:00 utc 2019

输入centos命令: hostnamectl

[root@ecs-kc1-small-1-linux-20191213102631 ~]# hostnamectl 
 static hostname: ecs-kc1-small-1-linux-20191213102631
       icon name: computer-vm
         chassis: vm
      machine id: 678c78faca6d40c283240a5da1680b2c
         boot id: 665694f713614100b7b86dd8550eb92a
  virtualization: kvm
operating system: euleros 2.0 (sp8)
          kernel: linux 4.19.36-vhulk1905.1.0.h276.eulerosv2r8.aarch64
    architecture: arm64

好奇怪,全支持各种 centos 命令,具体原因是什么,咱也不知道咱也不敢问,挺好,不用学习新命令。既然如此,那就先来一个: yum update ,也很好,完全支持!
既然看起来一切和centos差不太多,那安装 .netcore 应该也是可以安装centos来了,下面试试:

[root@ecs-kc1-small-1-linux-20191213102631 ~]# rpm -uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm
retrieving https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm
verifying...                          ################################# [100%]
preparing...                          ################################# [100%]
updating / installing...
   1:packages-microsoft-prod-1.0-1    ################################# [100%]

安装sdk

[root@ecs-kc1-small-1-linux-20191213102631 ~]# yum install dotnet-sdk-3.1
packages-microsoft-com-prod                                                                                                                                                                                      294 kb/s | 762 kb     00:02    
last metadata expiration check: 0:00:01 ago on fri 13 dec 2019 02:51:13 pm cst.
error: 
 problem: conflicting requests
  - package dotnet-sdk-3.1-3.1.100-1.x86_64 does not have a compatible architecture
  - nothing provides aspnetcore-runtime-3.1 needed by dotnet-sdk-3.1-3.1.100-1.x86_64
  - nothing provides dotnet-runtime-3.1 needed by dotnet-sdk-3.1-3.1.100-1.x86_64
  - nothing provides aspnetcore-targeting-pack-3.1 needed by dotnet-sdk-3.1-3.1.100-1.x86_64
  - nothing provides dotnet-targeting-pack-3.1 needed by dotnet-sdk-3.1-3.1.100-1.x86_64
  - nothing provides dotnet-apphost-pack-3.1 needed by dotnet-sdk-3.1-3.1.100-1.x86_64
  - nothing provides netstandard-targeting-pack-2.1 >= 2.1.0 needed by dotnet-sdk-3.1-3.1.100-1.x86_64

卧槽出错了,不过没关系,手动档我贼溜。

手动安装

执行下面的命令,下载 linux arm64 包包后进行解压安装

mkdir /opt/dotnet31
cd /opt/dotnet31
wget https://download.visualstudio.microsoft.com/download/pr/5a4c8f96-1c73-401c-a6de-8e100403188a/0ce6ab39747e2508366d498f9c0a0669/dotnet-sdk-3.1.100-linux-arm64.tar.gz
tar -zxvf dotnet-sdk-3.1.100-linux-arm64.tar.gz

检查是否成功

[root@ecs-kc1-small-1-linux-20191213102631 dotnet31]# /opt/dotnet31/dotnet --version
3.1.100

这回真的是euler。你看都到这一步了,干脆就弄个环境变量是吧,执行命令

vi /etc/profile
// 定位到文件末尾,加入下面的命令

path=$path:/opt/dotnet31
export path

保存,执行 source /etc/profile 使其生效

创建一个.netcore项目

mkdir /home/dotnetdemo
cd /home/dotnetdemo
dotnet new webapi

鲲鹏来了,在EulerOS试用.NETCore-3.1

由于默认启用了https,为了避免不要的麻烦,我们需要手动关闭https,编辑 vi properties/launchsettings.json,将sslport设置为0,applicationurl中只保留 http 的地址即可。

{
   ...
  "iissettings": {
    "iisexpress": {
      "sslport":0
    }
  },
  "profiles": {
     ...
    "dotnetdemo": {
      ...
      "applicationurl": "http://localhost:5000",
    }
  }
}

运行项目dotnet run

鲲鹏来了,在EulerOS试用.NETCore-3.1

访问项目接口

.netcore3.1生成的webapi项目自带了天气预报的demo,再也不是2.0中那种无意义的valu1/value2了(比心)

鲲鹏来了,在EulerOS试用.NETCore-3.1

结束语

整体来说,在终端上的操作体验,和centos几乎没有差别,我就是找不到包管理的官方文档,所以只好手动安装了,euleros作为鲲鹏的标配,感觉还是有所期待的,但是从os的技术层面来说,euleros还需努力,广大的程序员们不用太担心,国产操作系统已在持续发力中,给点时间,我们应该可以做得更好。