.NetCore 3.1 MVC 发布Linux实操
记录自己.net Core的学习,现在来发布到Linux系统
第一步:准备一台CentOS 7 X64服务器 .net core 3.1项目
第二步:准备服务器.net core环境
1.安装微软官方Microsoft key 一台机器就注册一次 就是告诉微软官方这台服务器要用到.net core 了
sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
2.开始安装SKD
sudo yum update sudo yum install dotnet-sdk-3.1
安装完了之后,检测是否安装成功!
dotnet --info
出现一下这种就证明安装成功!
为了更好的去管理我们的Linux服务器,我个人建议去安装宝塔。地址:https://www.bt.cn/download/linux.html
centos安装命令
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
安装完成之后根据宝塔提示 登录近宝塔安装对应环境
第三步:发布项目至文件夹(打开vs找到项目,右键选中发布)
发布完成之后找到对应文件夹,然后在宝塔中新建网站
新建完网站之后找到对应的网站文件夹,将我们发布的项目文件上传进去
上传完成之后,打开命令行终端 cd /www/wwwroot(cd进自己建立的网站对应的文件夹)
然后执行命令 dotnet XXX.dll
这样就启动网站成功,但是在服务器外面是访问不到的,core默认是5000的端口,修改端口可以自己在Program.cs设置
如果我们想在外面通过域名或者IP地址访问,那么我们需要用到Nginx 反向代理进行配置,进入宝塔的应用商店找到Nginx 1.16.1进行安装
安装完成之后
修改配置文件,进行80端口的监听服务(把80端口的访问反向代理到5000端口来,这样就可以在外面进行ip访问core项目了)
server { listen 80; location / { proxy_pass http://localhost:5000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } }
配置成功后,访问成功!但是进程会有时间限制,过一段时间进程就会GG,这样我们需要进行对Core项目进程的守护
进入我们的宝塔=》应用商店=》Supervisor管理器
启动完成!大功告成