Hello! 欢迎来到小浪云!


[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 新生命团队netcore服务器免费开放计划


本文旨在指导从未接触过linux的.net开发者,如何在centos7上安装.net core环境,并部署.net core应用程序。

本指南仅适用于centos,其他Linux发行版的命令可能需要稍作调整。

在开始之前,请确保已准备好服务器地址、用户名和密码。如果您没有Linux系统,可以使用新生命团队提供的公网服务器centos.newlifex.com。

新生命团队的netcore服务器免费开放计划

一、准备工作

Windows开发机上安装xshell和xftp,前者用于通过ssh连接Linux服务器,后者用于FTP文件传输。

打开xshell,创建一个新连接,名称和主机都填写centos.newlifex.com(实际使用时应替换为您的Linux服务器地址或域名),其他选项保持默认,如下:

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

点击连接后,会弹出SSH安全警告,您需要接受并保存SSH密钥。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

接受后,系统会要求输入用户名,这里我们输入root,并选择记住用户名。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

然后输入密码,新生命团队开放服务器本周的密码是nx@1250407685。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

为了方便,我们同样选择记住密码。

连接成功后,您可以在左侧会话管理器中看到刚才创建的连接,这在管理多个Linux服务器时非常方便。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

我们可以尝试一些可能用到的命令:

使用w命令查看当前连接到服务器的用户。下图显示只有我自己连接。

使用free -h命令查看服务器内存使用情况。下图显示已使用内存119M,Linux在这方面表现非常出色。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

使用top命令查看系统进程资源占用情况,类似于Windows任务管理器,定时刷新,按Q键退出。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

共63个进程,只有1个在运行,系统非常干净。不过下方看到有一个Java进程,后续我们会处理掉它。

使用ps aux命令查看进程详细信息。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

我们发现那个java进程来自cloudmonitor,应该是云监控服务。

二、安装环境

我们是为了.NET Core而来,主要任务是安装运行时环境。

为了方便和一劳永逸,我们采取快捷方式,先看看我的配置:

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

打开xshell的快速命令工具栏,然后添加几组快捷命令:

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

按钮“.Net Core”(注意:最后一行命令后面必须有一个换行,否则最后命令无法得到执行,下同)

按钮“.Net Core SDK”

按钮“Asp.Net Core”

按钮“卸载.Net Core”

具体功能就不介绍了,来源于:https://www.php.cn/link/9d88196d9b43925ec4093e0228fd7803

我们尝试第一个按钮,安装.NET Core运行时,不包括ASP.NET Core和.NET Core SDK。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

上图显示,已安装.NET Core运行时2.1.1。

您可以使用卸载按钮,然后再安装另外两个,看看有什么不同。

三、部署应用

使用visual studio 2017新建一个.NET Core控制台项目。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

在NuGet中引用NewLife.Core,建立一个稍微高级一点的示例。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

代码语言:JavaScript 代码运行次数:0

运行 复制 “`javascript Static void Main(String[] args) { XTrace.Useconsole(); var svr = new ApiServer(1234) { Log = XTrace.Log, EncoderLog = XTrace.Log, StatPeriod = 5 }; var ns = svr.EnsureCreate() as NetServer; ns.SocketLog = XTrace.Log; ns.SessionLog = XTrace.Log; ns.LogSend = true; ns.LogReceive = true; svr.Start(); Console.ReadKey(); } “`

如上,我们使用ApiServer建立一个rpc服务,并打开所有调试日志,它内置有两个服务接口,方便测试RPC通信。

编译并发布为可移植应用程序:

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

我们会得到一个包含dll文件和runtimeconfig.json文件的目录,这些是运行所必需的文件。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

使用xshell连接到服务器,这里可以是centos.newlifex.com。

在xshell工具栏上有一个绿色图标,点击打开xftp,左窗口地址栏进入刚才的发布目录,右窗口新建/root/ApiServer目录,并将左边的必要文件拖到右边,即可实现上传!

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

回到xshell中,使用cd ApiServer进入目录,执行dotnet ConsoleApp5.dll即可运行应用程序(前提是已安装.NET Core运行时)。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

客户端使用码神工具XCoder(https://www.php.cn/link/88275708422d0942423446f76b49e8fb Core应用程序已成功在CentOS上运行。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

仅仅运行还不够,有时候我们还需要查看应用程序的工作日志。仍然使用xftp,刷新右侧窗口,可以看到多出了Log目录,这就是我们的应用程序日志,右键传输即可下载到本地,当然也可以简单直接地拖到左边。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

使用vscode打开日志文件,可以看到非常详细的信息,特别是日志头部,有助于分析和查找问题。

[netcore]CentOS安装使用.netcore极简教程(免费提供学习服务器) 		新生命团队netcore服务器免费开放计划

四、总结

这篇面向Linux零基础的Windows工程师的极简教程终于写完了,基本上足以应对八成以上的日常工作。

其他更多细节,可以在网上找到,例如如何将应用程序安装为服务、如何实现开机启动等等。

综合过去20年编写代码的经验,.NET Core具有极强的优势,尽管存在一些小问题,但我必须说,只要微软不放弃,我坚决不放弃!

我是大石头,从1999年开始,19年的老码农。目前在快递行业从事数据分析架构工作,分析路上的上亿包裹。欢迎大家一起探索C#大数据!

End.

相关阅读