asp.net core 3.1 应用部署到国产服务器 centos7 自动启动

本文详细介绍了如何在Linux CentOS环境中安装.NET Core 3.1运行时,通过Visual Studio发布项目,并配置为http和https端口,实现Web应用的部署。还包括了如何设置开机自启动服务,以便应用程序在服务器重启后自动运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先安装依赖:

#注册 Microsoft 密钥。注册产品存储库。安装必需的依赖项。

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

#安装 .NET Core 运行时

sudo yum install aspnetcore-runtime-3.1

安装完成后输入命令:dotnet --info如下:

说明安装成功 

发布项目:

首先在Program.cs文件得CreateHostBuilder方法内添加webBuilder.UseUrls("http://*:5000;https://*:5001;");//Linux部署指定端口:

项目右键-发布:

发布方法选择文件系统,目标位置选择你要发布的目录:

发布设置,如下图:

点击发布(我之前发布成功过,所以才有发布成功字样):

发布成功后,将发布目录打包zip文件,使用xftp或者其它工具上传至linux你自己的目录,我得目录为自己新建的/opt/xxx,opt为根目录,xxx则为你自己新建的NetCore发布得程序目录,我这里文件夹名为netcore31: 

使用xshell链接服务器,使用cd命令进入/opt/netcore31目录解压,解压命令:unzip test.zip test.zip为你发布得程序打包文件,解压后路径:/opt/netcore31/test

 使用cd命令进入:cd /opt/netcore31/test 执行启动命令: dotnet xxx.dll --urls=http://*:5000,xxx为你得dll文件名,我这里默认5000端口,在你的浏览器上输入你得服务器地址即可访问,如:http://192.168.0.1:5000或者使用postmain等其它工具测试

开机自启:

我们使用上面的命令启动后可以正常访问,但是一旦关机重启你就需要重新使用命令启动,所以设置开机自启还是有必要的

 使用命令(没有文件则新建)vim /etc/systemd/system/xxx.service,将以下内容复制到xxx.service文件中:

[Unit]
Description=xxxapi

[Service]
WorkingDirectory=/opt/netcore31/test #工作目录

#启动命令
ExecStart=/usr/bin/dotnet /opt/netcore31/test/xxx.dll
Restart=always #设置服务停止后一直重启
RestartSec=10 #服务停止后10秒开始重启
SyslogIdentifier=dotnet-xxxapi

#换成你自己得用户名,root或者其它账号
User=xxx

#Production:生产环境 Development:开发环境
Environment=ASPNETCORE_ENVIRONMENT=Production

[Install]
WantedBy=multi-user.target

先按一下Esc后,输入:wq( 冒号不要忘记,字母wq)保存退出 

按一下Esc后,输入:q!( 冒号不要忘记,字母q,叹号)则直接退出,不保存

 以上完成后,依次输入命令:

#设置自启动
systemctl enable xxx.service

#立即启动服务
systemctl start xxx.service

#最后检查下服务运行状态
systemctl status xxx.service

#显示所有已启动的服务
systemctl list-units --type=service

#所有启用的服务
systemctl list-unit-files|grep enabled


#移除开机启动项的服务
systemctl disable xxx.service

 成功后,如下图:

执行命令期间出现,一些错误请重启服务器再试,重启后请先查看启动状态,输入命令:systemctl status xxx.service,显示如上图,说明开机启动已生效

此时,使用浏览器或者其它工具即可访问该程序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

csdn_aspnet

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值