【ASP.NET CORE 2.0】在CentOS上部署ASP.NET CORE 2.0程序,JoeyChou

【ASP.NET CORE 2.0】在CentOS上部署ASP.NET CORE 2.0程序

1. 安装CentOS

网上一搜一大把,我是在虚拟机上安装的。可以参考

2. 安装.NET CORE SDK for CentOS 7

2.1 添加.NET相关

为了安装.NET,需要注册微软签名密钥和添加微软相关的支持。这个操作每台机器只能做一次。
打开命令行,输出以下命令:

sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc

sudo sh -c 'echo -e "[packages-microsoft-com-prod]\nname=packages-microsoft-com-prod \nbaseurl= https://packages.microsoft.com/yumrepos/microsoft-rhel7.3-prod\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/dotnetdev.repo'

2.2 安装.NET SDK

首先,更新可用的安装包;
然后,安装.NET需要的组件,libunwind和libicu库;
最后,安装.NET SDK。
分别对应下面的命令:

sudo yum update sudo yum install libunwind libicu sudo yum install dotnet-sdk-2.0.2

安装完成之后,可以用以下命令来检测是否安装成功。

dotnet --info

如果安装成功会显示以下命令

安装.NET CORE 2.0的过程,官网上也有,传送门

3. 创建ASP.NET CORE应用程序

首先,打开命令行,创建一个文件夹,用于存放应用程序,文件夹名称可以随便取,这里我命名为testASPNETCORE。并且获得该文件夹的最高权限,便于后续操作。
命令如下:

mkdir testASPNETCORE chmod 777 testASPNETCORE

然后,进去该文件夹;再新建一个ASP.NET CORE程序。
命令如下:

cd testASPNETCORE
dotnet new web

如果显示这样,就说明创建成功。
 
然后,在程序中指明主机地址的端口号。
命令如下:

vi Program.cs

然后,按i进入编辑模式,在Program.cs文件中添加UseUrls(“http://*:5000”),之后再按esc键退出,再输出:wq,保存退出。

 
然后,发布程序。
命令如下:

dotnet publish –c release

 
然后,设置防火墙。
命令如下:

sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --permanent --zone=public --add-port=5000/tcp sudo firewall-cmd --reload

然后,进入bin目录,测试程序。
命令如下:

cd bin/release/netcoreapp2.0/publish/
dotnet testASPNETCORE.dll

 
最后,打开浏览器,输入localhost:5000。即可访问。
 
补充:
如果想外部进行访问,则先查询CentOS的IP。
命令如下:

ip addr show

 
然后,重复上述的测试步骤,即可通过IP来访问程序。
 
在windows系统的浏览器上也能成功访问。