一、环境准备
安装 .NET Runtime(用于部署运行),例如安装 .NET 8 Runtime(不需要开发):
            
            
              bash
              
              
            
          
          sudo yum install -y dotnet-runtime-8.0
        或者安装 SDK(含开发工具):
            
            
              bash
              
              
            
          
          sudo yum install -y dotnet-sdk-8.0
        查看版本验证:
            
            
              bash
              
              
            
          
          dotnet --info
        输出类似如下内容,则表明安装成功:
Host:
Version: 8.0.17
Architecture: x64
Commit: 77545d6fd5
RID: rhel.9-x64
二、部署 .NET 应用程序
1.上传或复制你的发布文件到服务器
如果在Windows 电脑发布,则进入项目所在目录,使用以下命令发布为生产环境:
            
            
              bash
              
              
            
          
          dotnet publish -c Release -o ./publish
        然后将文件打包成tar文件,上传到服务器指定目录,使用以下命令解压:
            
            
              bash
              
              
            
          
          tar -xvf myapp.tar
        2. 运行 .NET 应用
切换到项目目录并运行:
            
            
              bash
              
              
            
          
          dotnet myApp.dll
        默认监听 http://localhost:5000
查看服务是否在运行:
            
            
              bash
              
              
            
          
          ps -ef | grep dotnet
        查看端口是否在监听:
            
            
              bash
              
              
            
          
          sudo ss -tuln | grep 5000
        如果输出下面的内容则表明则程序已经在运行了
tcp LISTEN 0 512 0.0.0.0:5000 0.0.0.0:*
上面的命令如果窗口关闭,则程序退出。下面将其设置为持久化运行
三、设置为后台服务(Systemd)
            
            
              bash
              
              
            
          
          sudo vim /etc/systemd/system/myapp.service
        写入如下内容,
            
            
              bash
              
              
            
          
          [Unit]
Description=my.NET Web API
After=network.target
[Service]
# 设置工作目录(替换为你的项目发布目录)
WorkingDirectory=/var/www/projects
# 启动命令(包含 dll 路径)
ExecStart=/usr/bin/dotnet myapp.dll
# 设置环境变量用于监听公网地址
Environment=ASPNETCORE_URLS=http://0.0.0.0:5000
# 设置用户
User=root
# 自动重启策略
Restart=always
RestartSec=5
SyslogIdentifier=myapp-api
[Install]
WantedBy=multi-user.target
        确认应用工作:
注意事项
- 
WorkingDirectory一定要指向包含dll的目录。 - 
如果使用了其他环境变量(如数据库连接、日志路径等),也可以在
[Service]中继续加Environment=XXX=YYY - 
若应用运行失败,可用
journalctl -xe或journalctl -u byring查看详细错误日志。 
保存并退出,依次执行下面的命令:
            
            
              bash
              
              
            
          
          # 重新加载 Systemd 配置
sudo systemctl daemon-reload
#  设置服务开机自启,需替换myapp为自己的应用
sudo systemctl enable myapp
#  启动应用
sudo systemctl start myapp
#  停止应用
sudo systemctl stop myapp
#  重启应用
sudo systemctl restart myapp
# 查看服务状态
sudo systemctl status myapp
# 查看输出日志(实时滚动输出)
journalctl -u myapp -f
# 取消开机启动
sudo systemctl disable myapp
        服务启动好了,后面可以配置nginx进行域名访问了。