鲲鹏来了,在EulerOS试用.NETCore-3.1
在EulerOS试用.NETCore-3.1
前言
EulerOS其实出来有一段时间了,一直在关注,单是仅仅也只是停留在观望的阶段,目前还没有接入的打算;正好看到园子里的兄弟分享了华为云免费试用的活动后,难捺激动的心情,我马上去申请试用了一台服务器。先来看看官方的介绍(chuixu)
EulerOS是具备高安全性、高可扩展性、高性能、开放的企业级Linux操作系统平台,能够满足客户从传统IT基础设施到云计算服务的各种需求。EulerOS对ARM64架构提供全栈支持,打造完善的从芯片到应用的一体化生态系统。
对于一个服务器操作系统来说,这个介绍可以说很到位了,安全、高性能、开放(据说年底开源?),基于Linux,再加上华为全家桶,其实看起来还是蛮诱人的了。
申请试用
申请试用的地址是:https://activity.huaweicloud.com/free_test/index.html,我看到试用居然有奖?看了详细介绍后是要写试用体验,没关系,中奖那都是顺便的事,再说 Mate20 还是挺香的不是。
如果是打算写体验报告的同学,一定要选择 KCl,然后选择操作系统:EulerOS,这些准备工作完成,直接去支付后进入控制台等待主机创建完成就可以了
等待的过程有点无聊,大家可以去看看 EulerOS 的安装文档:https://obs.cn-north-1.myhuaweicloud.com/hweuleros/doc/cn/2.3/EulerOS V2.0SP3 安装指南(for ARM64).pdf
一旦主机创建完成,将会更新主机列表,会出现远程IP地址和远程登录按钮将变成可用状态。
远程登录
管理控制台界面,通过点击“远程登录”按钮进行 Web 控制台登录,输入账号密码后将出现属性的黑色命令行控制台界面,有一个好习惯大家要坚持做,就是安装完成后,先看看系统相关信息
输入 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
由于默认启用了https,为了避免不要的麻烦,我们需要手动关闭https,编辑 vi Properties/launchSettings.json,将sslPort设置为0,applicationUrl中只保留 http 的地址即可。
{
...
"iisSettings": {
"iisExpress": {
"sslPort":0
}
},
"profiles": {
...
"dotnetDemo": {
...
"applicationUrl": "http://localhost:5000",
}
}
}
运行项目dotnet run
访问项目接口
.NETCore3.1生成的webapi项目自带了天气预报的demo,再也不是2.0中那种无意义的valu1/value2了(比心)
结束语
整体来说,在终端上的操作体验,和CentOS几乎没有差别,我就是找不到包管理的官方文档,所以只好手动安装了,EulerOS作为鲲鹏的标配,感觉还是有所期待的,但是从OS的技术层面来说,EulerOS还需努力,广大的程序员们不用太担心,国产操作系统已在持续发力中,给点时间,我们应该可以做得更好。
鲲鹏来了,在EulerOS试用.NETCore-3.1的更多相关文章
- 华为ARM64服务器上手体验--不吹不黑,用实际应用来看看TaiShan鲲鹏的表现
背景 中美贸易冲突以来,相信最大的感受,并不是我对你加多少关税,而是我有,可我不卖给你."禁售"成了市场经济中最大的竞争力. 相信也是因为这个原因,华为"备胎转正&quo ...
- ASP.NET Core 1.1 Preview 1 简介(包含.NETCore 1.1升级公告)
ASP.NET Core 1.1 Preview 1于2016年10月25日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强. 要将现有项目更新到ASP.NET Core 1.1 Pre ...
- NetCore实践篇:分布式监控客户端ZipkinTracer从入门到放弃之路
前言 本文紧接上篇.Net架构篇:思考如何设计一款实用的分布式监控系统?,上篇仅仅是个思考篇,跟本文没有太大的关系.但有思考,结合现有的开源组件,实践起来更易理解起来,所以看本文之前,应该先看下上篇博 ...
- NetCore下模拟和使用Modbus工业通信协议
Tips: 1.目前NetCore下与Modbus通信的框架主要选择了 Modbus.Net https://github.com/parallelbgls/Modbus.Net 2.modbus是 ...
- NetCore中使用Myrmec
NetCore中使用Myrmec Myrmec 是什么? Myrmec 是一个用于检测文件格式的库,Myrmec不同于其它库或者手写检测代码,Myrmec不依赖文件扩展名(在实际使用中,你的用户很可能 ...
- azure k8s netcore 程序初次部署
以下都是我在2018年12月份做的实验,今天才发布出来. 念想 首先是了解一些关于K8s的一些基础概念,推荐查看一下这个链接,非常适合入门k8s.是因为K8S的环境搭建比较复杂(最主要是懒),其实也有 ...
- 如何使用 dotTrace 来诊断 netcore 应用的性能问题
最近在为 Newbe.Claptrap 做性能升级,因此将过程中使用到的 dotTrace 软件的基础用法介绍给各位开发者. Newbe.Claptrap 是一个用于轻松应对并发问题的分布式开发框架. ...
- iNeuOS工业互联网操作系统部署在华为欧拉(openEuler)国产系统,vmware、openEuler、postgresql、netcore、nginx、ineuos一站式部署
目 录 1. 概述... 3 2. 创建虚拟机&安装华为欧拉(openEuler)系统... 4 2.1 创建新的虚拟机... 4 2.2 ...
- Kube-OVN1.5.0新版本发布,支持鲲鹏云平台网络平面部署
近日,Kube-OVN发布了最新的1.5.0版本.自2019年4月开源以来,Kube-OVN经历了15次重要版本迭代,以及社区成立,建设者贡献代码,稳定性测试,国内外用户开始在生产环境中投入使用,企业 ...
随机推荐
- PHP判断数组下标有没有存在的方法
PHP判断数组下标有没有存在的方法<pre>if(!empty($token['errcode'])){ print_r($token['errmsg']); exit();}</p ...
- iOS地理反地理编码--CoreLocation
.sidebar{float:left;width:220px;} .container-fluid>.content{margin-left:240px;} a{color:#0069d6;t ...
- PHP 格式化公钥私钥(pem文件)
<?php header("Content-Type: text/html; charset=utf-8"); $filename = dirname(__FILE__).& ...
- Salesforce学习之路(十一)Aura组件属性<aura:attribute />
1. <aura:attribute />语法 Aura组件属性类似与Apex中类的成员变量(或者说Java中类的成员变量).他们是组件在特定的实例上设置的类型化字段,可以使用表达式语法从 ...
- 二、netcore跨平台之 Linux部署nginx代理webapi
上一章,我们讲了在linux上安装netcore环境,以及让netcore在linux上运行. 这一章我们开始讲在linux上配置nginx,以及让nginx反向代理我们的webapi. 什么ngin ...
- linux日常笔记(1)
1.SELlinux SELinux是 美国国家安全局 (NSA) 对于 强制访问控制的实现 =>可以使root受限的权限 关闭SELinux=>修改配置文件,永久生效; sed -i ' ...
- hdu 2647 Reward (topsort)
RewardTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- python的文件操作及简单的用例
一.python的文件操作介绍 1.文件操作函数介绍 open() 打开一个文件 语法:open(file, mode='r', buffering=-1, encoding=None, errors ...
- Vue_声明周期
Vue生命周期 在vue2.0的时候,声明钩子发生了改变,具体有八个 <!-- HTML部分 --> <div id="app"> <div>{ ...
- 20191031-9 beta week 1/2 Scrum立会报告+燃尽图 07
此作业要求参见https://edu.cnblogs.com/campus/nenu/2019fall/homework/9917 一.小组情况 队名:扛把子 组长:孙晓宇 组员:宋晓丽 梁梦瑶 韩昊 ...