在 CentOS7上部署.Net6程序

news/2024/5/19 23:24:33 标签: .netcore, centos

一、在 CentOS 上安装 .NET SDK 或 .NET 运行时

如果要开发 .NET 应用,请安装 SDK(包括运行时)。 或者,如果只需运行应用程序,请安装运行时。 如果要安装该运行时,建议安装 ASP.NET Core 运行时,因为它同时包括 .NET 和 ASP.NET Core 运行时。

1、安装签名

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

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

2 、安装 SDK

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

sudo yum install dotnet-sdk-6.0

3、安装运行时

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

sudo yum install aspnetcore-runtime-6.0

作为 ASP.NET Core 运行时的一种替代方法,你可以安装不包含 ASP.NET Core 支持的 .NET 运行时:将上一命令中的 aspnetcore-runtime-6.0 替换为 dotnet-runtime-6.0

sudo yum install dotnet-runtime-7.0

4、检查安装的版本

检查SDK

dotnet --list-sdks

检查运行时

dotnet --list-runtimes

二、编译打包发布相关NET6 WebAPI的应用程序

采用手动发布或者CI编译的方式程序发布至指定文件夹

三、 发布测试的NET6 WebAPI 应用程序

1、拷贝发布文件到指定目录

示例 cp 

2、防火墙端口关闭

firewall-cmd --zone=public --add-port=6000/tcp --permanent  // permanent参数是永远存在,不然的话,重启后就没有了
firewall-cmd --reload // 重启防火墙 ,添加端口后记得执行此命令

3、运行测试

dotnet xxxx.dll --urls http://*:6000 

4、访问测试

http://服务器IP:6000

四、设置开机自启动

开机自启动可以systemd 做进程管理,本次采用该方案

1、创建启动服务

vi /etc/systemd/system/shuikanshui-blos-csdn.service

服务文件内容

[Unit]
Description=shuikanshui-blos-csdn.service
 
[Service]
WorkingDirectory=/var/www/dotnet     
ExecStart=/usr/bin/dotnet  /var/www/dotnet/shuikanshui-blos-csdn.service.dll --urls http://*:6000 
Restart=always
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=AspnetCore
User=root
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false
 
[Install]
WantedBy=multi-user.target

2、使自启动生效

systemctl enable shuikanshui-blos-csdn.service

3、立即启动服务

systemctl start shuikanshui-blos-csdn.service

4、查看服务状态

systemctl status shuikanshui-blos-csdn.service


http://www.niftyadmin.cn/n/53478.html

相关文章

极验2代验证码分析

目标链接 aHR0cDovL3d3dy5qc2dzai5nb3YuY246NTg4ODgvbWluaS9uZXR3ZWIvU01MaWJyYXJ5LmpzcA接口分析 点击搜索就会跳出验证码,netWebServlet.json 的请求,会返回 challenge 和 gt 接着可以看响应请求图片信息的接口,可以看到请求参数包含cha…

Zookeeper技术认知

目录概念理解工作原理文件系统通知系统zookeeper在kakfa中的作用概念理解 Zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目。 工作原理 Zookeeper 作为一个分布式的服务框架,主要用来解决分布式集群中应用系统的一致性问题&…

Linux系统位运算函数以及相应CPU ISA实现收录

以32位数据的二进制表示为例,习惯的写法是LSB在左,MSB在右,注意BIT序和大小端的字节序没有关系。Linux和BIT操作有关的接口在定义在头文件bitops.h中,bitops.h定义有两层,通用层和架构层,对应两个bitops.h&…

人大金仓数据库的归档日志

归档日志 归档日志是非活动的WAL日志备份。通过使用归档日志,可以保留所有WAL日志的历史记录,当数据库处于ARCHIVELOG模式并进行日志切换时,后台进程archiver process会将WAL日志的内容保存到归档日志中,当数据库出现介质失败时&…

引用和指针傻傻分不清

🚀🚀🚀大家觉不错的话,就恳求大家点点关注,点点小爱心,指点指点🚀🚀🚀 目录 🐰引用和指针的区别 🌸从现象上看 🌸从编译上看 &am…

CUDA中的数学方法

CUDA中的数学方法 文章目录CUDA中的数学方法1. Standard FunctionsSingle-Precision Floating-Point FunctionsDouble-Precision Floating-Point Functions2. Intrinsic FunctionsSingle-Precision Floating-Point FunctionsDouble-Precision Floating-Point Functions参考手册…

chatgpt注册问题解决. You‘ve made too many phone verification requests.

本来想多注册chagpt几个号,发现注册不了了 错误:You’ve made too many phone verification requests. Please try again later or contact us through our help center at help.openai.com. 或者错误:We’ve detected suspicious behavior…

C/C++:程序环境和预处理/宏

程序的翻译环境和执行环境 在ANSI C的任何一种实现中,存在两个不同的环境。第1种是翻译环境,在这个环境中源代码被转换为可执行的机器指令。第2种是执行环境,它用于实际执行代码。 编译和链接 一份源代码(比如test.c)需要通过编译&#xf…