出售域名 11365.com.cn
有需要请联系 16826375@qq.com
在手机上浏览
在手机上浏览

linux部署.net core

发布日期:2018-12-08

快速浏览:

.Net Core 概述

启用虚拟机Hyper-v

创建虚拟机

安装Ubuntu 16.04

安装图形界面

安装FTP

安装.net core 运行环境

测试运行


.Net Core 概述
.net 自问世以来就成为了java的对手,虽然潜力无限,语法和IDE等方面都超过了java,但由于在跨平台和开源方面处于弱势,一直不被人待见。而如今微软推出了.net core,实在是一个很给力的进步。

.NET Core 是.NET Framework的新一代版本,是微软开发的第一个官方版本,具有跨平台 (Windows、Mac OSX、Linux) 能力的应用程序开发框架 (Application Framework),未来也将会支持 FreeBSD 与 Alpine 平台,也是微软在一开始就开源的软件平台。

.net core的官方网站是https://dotnet.github.io/,由微软和github共同维护,github是全球最大的开源托管平台,后来被微软收购,.net core部署到github也是很有深意的。

 

启用虚拟机Hyper-v
打算在虚拟机上安装linux体验一把。虚拟机选择win10自带的Hyper-v,虚拟机有很多种,比如经典的vmware,还有Oracle virtualbox,用起来都差不多。
从“设置->应用->程序和功能”或者从控制面板直接进入“程序和功能”,点击“启用或关闭Windows功能”,选中Hyper-V安装。



 

创建虚拟机
1)    下载ubuntu16.4
在官网下载Ubuntu 16.04.5 Server (64-bit) ,官网地址:https://www.ubuntu.com/download。
2)    创建虚拟交换机
创建一个网络适配器备用
在Hyper-V右铡点击“虚拟交换机管理器”->“新建虚拟网络交换机”
 
类型选择外部
 
外部网络选择系统的网卡适配器。
3)    新建虚拟机
在Hyper-V右侧点击“新建”-> “虚拟机”。
 
名称随便填写,存储位置所在硬盘要有足够的空间。
 
虚拟机代数这里选择“第一代”。经测试第二代挺麻烦的。
 
继续下一步
 
选择之前我们配置的虚拟交换机“ubuntu16虚拟交换机”。
 
虚拟硬盘不要太小,否则很多东西装不上。
 
映像文件选择之前我们下载的ubuntu16.04镜像文件。
 
点击完成,创建虚拟机成功。

 

安装Ubuntu 16.04
右键虚拟机启动并连接。首先要选择语言,本人亲测在安装时选择中文有乱码和安装报错的BUG,所以这里选择英文。
 
  
 
 


配置键盘选择“NO”
 
然后就是自动加载组件了和自动配置网络了(我们之前有指定使用了虚拟交换机)。接下来是设置主机名称。
 
填写主机名称:singoo
 
填写新用户名称:jsonlee
 
 
填写密码
 
确认密码
 
加密home目录,这里选择“NO”,接下来是自动设置系统时钟。
 

我这里被定位到亚洲的重庆,其实我是深圳,不管这么多,点击“Yes”。
 
分区选择“use entire disk and set up LVM”。
 
 
是否写入磁盘和配置LVM。这里选择“Yes”。
 
直接“continue”下一步
 
保存修改到磁盘,接下来就是安装系统。
 
 
配置HTTP代理,不管他,直接“Continue”下一步。
 
这里问怎么管理升级,我选择不自动升级:“No automatic updates”。
 
可选软件安装,选择“standard system utilties”。
 
选择“Yes”继续下一步。
 
安装完成了,重启!

 

安装图形界面
登录进入系统后,在命令行输出以下代码:

sudo apt-get update


更新包

sudo apt-get install xubuntu-desktop


安装图形界面,安装的时候要确认一次,输出“Y”回车直到安装完成并重启。

 
重新进入系统后就有了图形界面了!

 

安装FTP
右键点击桌面,选择“Open Terminal Here”打开命令行。
键入“vsftpd --version”查看是否安装了FTP。
 
显示没有安装,输出以下命令安装vsftpd

sudo apt-get install vsftpd

安装完成后,打开配置文件 /etc/vsftpd.conf ,配置以下参数并保存
anonymous_enable=NO #禁止匿名访问
local_enable=YES
write_enable =YES #启动才能上传和删除文件
allow_writeable_chroot=YES 
如果保存文件时提示没有权限
 
我们需要文件设置可写

sudo chmod 777 /etc/vsftpd.conf

创建一个目录用于上传网站文件

sudo mkdir /home/wwwroot

设置wwwroot 为可读写

sudo chmod 777 /home/wwwroot

创建FTP用户:myftp

sudo useradd –d /home/wwwroot –s /bin/bash myftp

创建FTP密码,这里需要输出两次密码。

sudo passwd myftp

防火墙打开21端口(测试的话也可以关闭防火墙:ufw disable)

sudo ufw allow 21

 查看21端口是否在监听

netstat –an | grep 21


  

查看服务器的IP,可以看到是192.168.1.125

ifconfig


以上配置完成后,我们就可以用FTP客户端连接vsftp了,打开FlashFXP连接。
 


 
这样就可以上传我们的网站文件了。

 

安装.net core 运行环境
1)    微软官方文档
按照微软的文档来安装环境,注意选择安装的ubuntu 版本。
https://dotnet.microsoft.com/download/linux-package-manager/ubuntu16-04/runtime-current
 
2)    安装SDK和runtime

wget -q https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get install apt-transport-https
sudo apt-get update

安装SDK

sudo apt-get install dotnet-sdk-2.1.200

安装runtime

sudo apt-get install aspnetcore-runtime-2.2

安装完成后运行 dotnet –version会提示net core版本信息
 
到此,linux上就安装好了.net core环境了。下面我们就上传一个测试网站。

 

测试运行
1).net core mvc
打开VS2017创建.net core 项目

项目模板,选择“Web应用程序(模型视图控制器),就是.net core mvc。
 
创建完成后,运行一下,发现没有问题,发布项目
 
点击配置,发布方法选择“文件系统”,目标位置默认是定位到项目的/bin/Dbug目录下。
 
其它的默认,然后点击发布。可以看到 /bin/Debug目录下已经有发布的文件了。
 
2)    上传并运行
把上面的文件打包成publish.rar,上传到linux服务器。

先要安装 urar 。

sudo apt-get install unrar

然后解压文件publish.rar到目录“/home/wwwroot/web”。

unrar x /home/wwwroot/publish.rar /home/wwwroot/web

执行 dotnet 项目名称.dll,我的项目命名是TestCore。运行成功会告诉访问的网址是 http://localhost:5000。 

重新打开一个命令窗口,输出 firefox 打开火狐浏览器,并键入 http://localhost:5000,可以看到效果。

 

到这里就完成了net core在linux服务器上的配置。