.net6部署到linux上(CentOS Linux 7)

目录

一、先在linux上配置.net环境

添加 Microsoft 包存储库

安装 SDK

安装运行时

检查 SDK 版本可使用终端查看当前安装的 .NET SDK 版本。 打开终端并运行以下命令。

二、创建.net6 mvc项目 并发布

创建项目 

 修改默认端口

打包发布到文件夹

 运行打包项目查看项目是否ok

 将项目放到linux上

测试项目在linux上是否有问题 

如何开放端口

 三、在linux上运行项目并守护进程

第一种方法(守护进程管理器)

 第二种方法(使用nohup &命令)


一、先在linux上配置.net环境

首先,先配置.net6环境

添加 Microsoft 包存储库

安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加 Microsoft 包存储库。 打开终端并运行以下命令:

sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm

安装 SDK

.NET SDK 使你可以通过 .NET 开发应用。 如果安装 .NET SDK,则无需安装相应的运行时。 若要安装 .NET SDK,请运行以下命令:

sudo yum install dotnet-sdk-6.0

安装运行时

通过 ASP.NET Core 运行时,可以运行使用 .NET 开发且未提供运行时的应用。 以下命令将安装 ASP.NET Core 运行时,这是与 .NET 最兼容的运行时。 在终端中,运行以下命令:

sudo yum install aspnetcore-runtime-6.0

检查 SDK 版本
可使用终端查看当前安装的 .NET SDK 版本。 打开终端并运行以下命令。

复制
dotnet --list-sdks

看到sdk版本号就说明安装好了 

二、创建.net6 mvc项目 并发布

创建项目 

.net6部署到linux上(CentOS Linux 7)_第1张图片

 修改默认端口

builder.WebHost.UseUrls("http://*:5000");//单个设置

打包发布到文件夹

.net6部署到linux上(CentOS Linux 7)_第2张图片

 运行打包项目查看项目是否ok

 到打包的项目

dotnet 项目名

运行成功! 

 .net6部署到linux上(CentOS Linux 7)_第3张图片

在浏览器查看ok

.net6部署到linux上(CentOS Linux 7)_第4张图片

 将项目放到linux上

打开宝塔,将打包的.net项目文件全选择拖到服务器文件夹上面

.net6部署到linux上(CentOS Linux 7)_第5张图片

测试项目在linux上是否有问题 

 点击终端输入 : dotnet WebApplication2.dll  运行

.net6部署到linux上(CentOS Linux 7)_第6张图片

 显示这样就说明我们的项目在linux上也没问题,记得把端口开发才行

.net6部署到linux上(CentOS Linux 7)_第7张图片

如何开放端口

1.开启防火墙

 systemctl start firewalld

2.开放指定端口
命令含义:
--zone #作用域
--add-port=1935/tcp  #添加端口,格式为:端口/通讯协议
--permanent  #永久生效,没有此参数重启后失效
     firewall-cmd --zone=public --add-port=1935/tcp --permanent

3、重启防火墙
firewall-cmd --reload
4、查看端口号
netstat -ntlp   //查看当前所有tcp端口·

netstat -ntulp |grep 1935   //查看所有1935端口使用情况·

 三、在linux上运行项目并守护进程

第一种方法(守护进程管理器)

这种方法很简单,比较适合新手,

 下载守护进程管理器,点击设置

 .net6部署到linux上(CentOS Linux 7)_第8张图片

 点击添加守护进程

 .net6部署到linux上(CentOS Linux 7)_第9张图片

 填写信息

.net6部署到linux上(CentOS Linux 7)_第10张图片

点击确定后可以看到我们添加成功了 

 .net6部署到linux上(CentOS Linux 7)_第11张图片

去浏览器输入ip加域名,测试是否成功!

 可以看到第一种方法成功了.net6部署到linux上(CentOS Linux 7)_第12张图片

 第二种方法(使用nohup &命令)

到项目目录下执行运行下面的命令就可以了 

--urls="http://*:5001"*指定到开发端口(不指定也行,不指定就是默认的)

nohup 英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行

.net6部署到linux上(CentOS Linux 7)_第13张图片

nohup dotnet socialnetworkApp.dll --urls="http://*:5001"&  

总结: 好了目前小编就知道这两种简单的方式,小编也是小菜鸡哈哈哈,欢迎大家交流

你可能感兴趣的:(.net,linux,centos,运维)