【摘要】 介绍Ubuntu 18.04环境下.NET Core 3.0的安装配置、初始项目的生成和运行

1. 基础环境

  • 2vCPUs | 4GB | kc1.large.2

  • Ubuntu 18.04 64bit with ARM

2. 下载

.NET Core 3.0 SDK下载地址:https://dotnet.microsoft.com/download/dotnet-core/3.0

选择Linux ARM64版本,下载到虚拟机中:

本例中可以运行下列命令行下载.NET Core 3.0 ARM64 Linux安装包:

wget 
https://download.visualstudio.microsoft.com/download/pr/cbc83a0e-895c-4959-99d9-21cd11596e64/b0e59c2ba2bd3ef0f592acbeae7ab27d/dotnet-sdk-3.0.100-linux-arm64.tar.gz

3. 安装

解压缩安装包,并且将解压后的文件夹移动到/opt目录下:

sudo mkdir /opt/dotnet-3.0
sudo tar -zxvf dotnet-sdk-3.0.100-linux-arm64.tar.gz -C /opt/dotnet-3.0

4. 配置

打开~/.bashrc文件,在其中设置dotnet命令的相关环境变量

vi ~/.bashrc

在文件末尾添加:

export DOTNET_ROOT=/opt/dotnet-3.0
export PATH=$PATH:$DOTNET_ROOT

使得配置立即生效:

source ~/.bashrc

5. 检测

打开命令行,运行:

dotnet --version

查看其输出结果应正确打印出版本号

6. 创建和运行简单控制台项目

dotnet new console -n consoleApp
cd consoleApp
dotnet run

观察运行结果

7. 创建简单ASP.NET Core MVC Web项目

dotnet new mvc -n mvcApp
cd mvcApp
dotnet run

可观察到控制台输出:

这说明该网站启动后可通过http://localhost:5000/5001端口访问

按Ctrl+C结束网站运行

8. 配置云服务器开放默认端口

需要配置云服务器,使得端口5000、5001可以从外部访问

(1)打开云服务器控制台,进入【安全组】

(2)在【安全组】配置页上,选择【Sys-default】的【配置规则】操作:

(3)配置协议端口【5000-5001】作为入方向允许访问,如下图所示:

9. 远程访问网站

(1) 修改网站程序代码,允许在服务器的所有绑定IP地址(包括弹性公网IP地址)上监听

打开Program.cs文件,定位到CreateHostBuilder方法,将原有代码修改成下图所示:

(2) 再次运行网站,然后从客户端浏览器通过公网IP地址访问网站:

作者:Jerry Zhou

鲲鹏云实验-.NET Core 3.0-开始使用的更多相关文章

  1. 鲲鹏云实验-Python+Jupyter机器学习基础环境

    [摘要] 介绍Ubuntu 18.04环境下Python3常用科学计算和数据分析包(numpy, scipy, matplotlib, sklearn, pandas)的安装,以及Jupyter No ...

  2. 来腾讯云开发者实验室 学习.NET Core 2.0

    腾讯云开发者实验室为开发者提供了一个零门槛的在线实验平台,开发者实验室提供的能力: 零门槛扫码即可免费领取实验机器,支持使用自有机器参与,实验完成后支持保留实验成果: 在线 WEB IDE 支持 sh ...

  3. Kube-OVN1.5.0新版本发布,支持鲲鹏云平台网络平面部署

    近日,Kube-OVN发布了最新的1.5.0版本.自2019年4月开源以来,Kube-OVN经历了15次重要版本迭代,以及社区成立,建设者贡献代码,稳定性测试,国内外用户开始在生产环境中投入使用,企业 ...

  4. 使用dotnet-dump 查找 .net core 3.0 占用CPU 100%的原因

    公司的产品一直紧跟 .net core 3.0 preview 不断升级, 部署到 Linux 服务器后, 偶尔会出现某个进程CPU占用100%. 由于服务部署在云上, 不能使用远程调试; 在局域网内 ...

  5. 将 ASP.NET Core 1.0 应用作为 docker 镜像发布 (Linux版)

    var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...

  6. 在ASP.NET Core 1.0中如何发送邮件

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:目前.NET Core 1.0中并没有提供SMTP相关的类库,那么要如何从ASP.NE ...

  7. 用ASP.NET Core 1.0中实现邮件发送功能

    准备将一些项目迁移到 asp.net core 先从封装类库入手,在遇到邮件发送类时发现在 asp.net core 1.0中并示提供SMTP相关类库,于是网上一搜发现了MailKit 好东西一定要试 ...

  8. C# 6 与 .NET Core 1.0 高级编程 - 40 ASP.NET Core(上)

    译文,个人原创,转载请注明出处(C# 6 与 .NET Core 1.0 高级编程 - 40 章  ASP.NET Core(上)),不对的地方欢迎指出与交流. 章节出自<Professiona ...

  9. C# 6 与 .NET Core 1.0 高级编程 - 40 ASP.NET Core(下)

    译文,个人原创,转载请注明出处(C# 6 与 .NET Core 1.0 高级编程 - 40 章  ASP.NET Core(下)),不对的地方欢迎指出与交流. 章节出自<Professiona ...

随机推荐

  1. .NET Core 3.0 部署在docker上运行

    自从.NET Core3.0发布之后,写了几篇关于.NET Core 3.0的文章,有助于你快速入门.NET Core3.0. 本篇文章主要讲解如何一步步创建一个mvc项目,然后发布并部署在Docke ...

  2. csps模拟测试57

    T1 天空龙 大神题,考察多方面知识,例如:快读 附上考试代码,以供后人学习 应某迪要求,我决定多写一点. 正如文化课有知识性失分和非知识性失分一样,OI也同样存在. 但非知识性失分往往比知识性失分更 ...

  3. Mysql中,update语句引起的时间戳自动更新问题

    前几天遇到一个奇怪的问题. 在Mysql数据库中有一张表,表中有一个字段是timestamp类型的.我在update别的字段时,这个timestamp字段的时间会自动更新为当前时间. 后来发现,是My ...

  4. PHP经典面试题:如何保证缓存与数据库的双写一致性?

    只要用缓存,就可能会涉及到缓存与数据库双存储双写,你只要是双写,就一定会有数据一致性的问题,那么你如何解决一致性问题? 面试题剖析 一般来说,如果允许缓存可以稍微的跟数据库偶尔有不一致的情况,也就是说 ...

  5. 如何基于k8s快速搭建TeamCity(YAML分享)

    前言 最近有朋友基于之前的博客<Docker最全教程之使用TeamCity来完成内部CI.CD流程(十七)>搭建TeamCity时出现了一些问题,由于平常比较忙,没有及时答复,非常抱歉. ...

  6. PHP 富文本解码为 HTML 并显示

    PHP 富文本解码为 HTML 并显示 使用  html_entity_decode 函数 参考文档 PHP实例: // html_entity_decode(待解码内容, 如何处理引号) html_ ...

  7. python中的__str__和__repr__方法

    如果要把一个类的实例变成 str,就需要实现特殊方法__str__(): class A(object): def __init__(self,name,age): self.name=name se ...

  8. [转发]CSR 量产 烧录 软件

    蓝牙量产软件主要是为了应对蓝牙设备在批量生产时的一些如固件下载,地址下载,名字修改,以及一些辅助测试和检验功能. 目前,CSR推出的蓝牙芯片按照存储介质以及可编程与否分为两大类:ROM版本和Flash ...

  9. Bran的内核开发教程(bkerndev)-08 中断服务程序(ISR)

    中断服务程序(ISR)   中断服务程序(ISR)用于保存当前处理器的状态, 并在调用内核的C级中断处理程序之前正确设置内核模式所需的段寄存器.而工作只需要15到20行汇编代码来处理, 包括调用C中的 ...

  10. 稀疏数组 python描述

    什么是稀疏矩阵? 在矩阵中,若数值为0的元素数目远远多于非0元素的数目,并且非0元素分布没有规律时,则称该矩阵为稀疏矩阵. 作用: 在这种情况下,很多0值无疑是很浪费空间的,当我们要把数组存储在磁盘中 ...