.net core On Linux 的安装部署
阅读目录
安装.NET Core SDK 在CentOS上
1.右键打开命令行:
2.为了安装.NET,需要注册微软签名密钥和添加微软相关的支持。这个操作每台机器只能做一次。
Add the dotnet product feed(其实就是向微软提交投名状,表示我这台服务器要用core),注意:先检测下是否能联网;
打开命令行,输出以下命令:
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'
3.安装 Core SDK。
命令一:sudo yum update
需要一段时间,而且会提示是否继续,输入y然后回车。
如果遇到提示another app is currently holding the yum lock;waiting for it to exit,表示yum正在被使用,通过以下命令强制关闭:rm -f /var/run/yum.pid
命令二:sudo yum install libunwind libicu
命令三:sudo yum install dotnet-sdk-2.0.2
4.使用命令 dotnet --info 查看是否安装成功。出现下面界面则说明安装sdk成功
部署网站
1.首先,创建文件夹core,命令为
mkdir core
cd core
2.我这里使用的是虚拟机,就直接将生成好的文件拷到core目录下,然后执行命令(dotnet 项目名称.dll)
3.将发布的代码复制到core文件
4.因为我安装的2.0的sdk,项目是2.1,所以这里部署失败,升级一下sdk
安装2.1版本:sudo yum install dotnet-sdk-2.1.101
安装完毕!检查版本
升级失败还是2.0的版本,不在这里纠结了。(升级:https://www.cnblogs.com/chuankang/p/9831279.html)
我把项目降级到2.0,就是体验下core部署在linux:
继续发布 报错:An assembly specified in the application dependencies manifest (NetCore2.0.Mvc.deps.json) was not found
出现这个错误,是引文未安装dotnet-hosting-2.0.x (对应上图中的2.0.8)
使用yum 安装一下:
sudo yum install dotnet-hosting-2.0.8
5.安装完成,发布成功!
6.5000端口访问成功:
注意:.Net Core 默认创建的项目部署完成以后,只能在本机内访问,外部通过IP是打不开的,可以通过配置Nginx实现。也可以通过修改Program.cs
WebHost.CreateDefaultBuilder(args) .UseKestrel() .UseUrls("http://*:5000") .UseContentRoot(Directory.GetCurrentDirectory()) .UseIISIntegration() .UseStartup<Startup>() .Build();
收藏来至:https://www.cnblogs.com/chuankang/p/9473768.html