【后端】Linux系统发布.NetCore项目

目录

1.设置全球化不变模式

1.发布到文件

[3. 配置为服务](#3. 配置为服务)

3.1.添加服务

3.2.添加执行权限

3.3.启动服务

4.访问


1.设置全球化不变模式

双击所需项目,设置全球化不变模式

复制代码
    <!-- 设置全球化不变模式 -->
    <RuntimeHostConfigurationOption>System.Globalization.Invariant=true</RuntimeHostConfigurationOption>

案例如下

1.1.设置端口

在 Startup 或者 Program 设置程序启动端口

复制代码
//启动应用程序并监听在 8861 端口,接受所有 IP 地址的请求
//地址格式为 http://*:8861,表示绑定到所有网络接口
app.Run("http://*:8862");

案例如下

2.发布到文件

右键所需项目 → 发布 → 发布到文件夹 → 点击下一步 → 点击完成

点击显示所有设置 → 设置部署模式独立 → 目标运行时选择 linux-x64

3. 配置为服务

3.1.添加服务

把文件夹里的所有文件复制到 Linux 服务器后,创建服务文件

复制代码
sudo nano /etc/systemd/system/服务名称.service

输入以下内容

复制代码
[Unit]
Description=Demo API Application
[Service]
WorkingDirectory=/目标路径
ExecStart=/目标路径/你的应用名称
Restart=always
# Restart on crash or system reboot
RestartSec=10
User=root
Environment=ASPNETCORE_ENVIRONMENT=Production Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false

[Install]
WantedBy=multi-user.target

案例如下

3.2.添加执行权限

复制代码
chmod +x 执行文件地址

案例如下

3.3.启动服务

启动开机自启:

sudo systemctl enable 服务名称

重启服务(例如更新了程序之后):

sudo systemctl restart 服务名称

⏸ 暂时停止服务:

sudo systemctl stop 服务名称

▶ 再次启动服务:

sudo systemctl start 服务名称

📊 查看服务状态(推荐每次操作后都执行一次):

sudo systemctl status 服务名称

复制代码
sudo systemctl enable 服务名称  # 开机自启
sudo systemctl start 服务名称   # 立即启动
sudo systemctl status 服务名称  # 检查状态
sudo journalctl -u 服务名称 -f  # 实时日志

4.访问

复制代码
        http://IP地址:端口/Swagger/index.html   (注意:访问前需开启访问端口)
相关推荐
淡海水1 天前
08-02-优化-LINQ与函数式编程的GC代价
unity·c#·.netcore·linq·gc
淡海水2 天前
07-06-源码-.NET Core GC的极致优化技术
unity·架构·c#·.netcore·gc·1024程序员节
淡海水3 天前
07-02-源码-.NET Core GC分配路径
算法·unity·c#·.netcore·gc·1024程序员节
淡海水3 天前
07-04-源码-.NET Core GC清扫与压缩
unity·架构·c#·.netcore·gc·1024程序员节
1-1=04 天前
.NET Core 本地化 (L10n)
.net·.netcore
1-1=04 天前
.NET Core 健康检查
.net·.netcore·1024程序员节
淡海水4 天前
07-03-源码-.NET Core GC标记与扫描
unity·c#·.netcore·gc
csdn_aspnet4 天前
.NETCore SqlSuagr 根据 mysql 数据表按顺序生成简单编号
mysql·.netcore·sqlsugar·1024程序员节·sequence·.net8·编号
淡海水5 天前
07-01-源码-.NET Core GC总览与架构
unity·架构·c#·.netcore·gc
csdn_aspnet5 天前
在 .NET Core 中使用 Redis
redis·.netcore