Alibaba Cloud Linux 部署.NET 8 环境 项目运行

Alibaba Cloud Linux 4 环境下部署 .NET 8 环境,来部署运行项目

一:配置安装 .NET 8 环境

cs 复制代码
# 1. 下载 .NET 8 运行时(x64 版本)

wget https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.419/dotnet-sdk-8.0.419-linux-x64.tar.gz

# 具体版本根据自己实际需要修改


# 2. 创建安装目录

sudo mkdir -p /usr/share/dotnet

# 3. 解压到安装目录

sudo tar -xzf dotnet-sdk-8.0.419-linux-x64.tar.gz -C /usr/share/dotnet


# 4. 创建符号链接(让系统能找到 dotnet 命令)

sudo ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet


# 5. 验证安装

dotnet --version

如果验证过程中,出现下面的报错

cs 复制代码
Process terminated. Couldn't find a valid ICU package installed on the system. Please install libicu (or icu-libs) using your package manager and try again. 

这个错误是 .NET 5/6/7/8 需要 ICU 库(International Components for Unicode)来支持全球化功能,但你的最小化安装的 Alibaba Cloud Linux 系统缺少这个库

执行下面的命令就行

cs 复制代码
# 对于 Alibaba Cloud Linux (兼容 RHEL/CentOS)

sudo yum install -y libicu

# 安装完成后,再次验证

dotnet --version

二:开发工具里 发布 你的项目 将 publish文件夹复制到服务器对应地址

三:以后台进程形式运行脚本

1:在/etc/systemd/system/ 新建 myapp.service文件

也就是要有一个 /etc/systemd/system/myapp.service 文件

2:复制内容如下

cs 复制代码
[Unit]
Description=My .NET 8 Web Application

[Service]
WorkingDirectory=/data    #你的项目目录地址
ExecStart=/usr/bin/dotnet /data/Shop.dll --urls=http://*:5000   # 你的项目dll文件名和 端口
Restart=always
# 以什么用户运行,建议不要用root,可以创建一个普通用户
User=xxx
# 如果程序崩溃,等待10秒后重启
RestartSec=10
# 将日志输出到系统日志
SyslogIdentifier=myapp
[Install]
WantedBy=multi-user.target

3:重新加加载systemd

cs 复制代码
# 重新加载systemd,使其识别新创建的服务

sudo systemctl daemon-reload

# 设置服务开机自启

sudo systemctl enable myapp.service

# 立即启动服务

sudo systemctl start myapp.service

# 查看服务运行状态

sudo systemctl status myapp.service

此时状态 有 active(running) 就ok了

四:云服务提供商放开你要的端口

浏览器中输入 Ip:5000/xxxxx 就可以访问了

相关推荐
夜听莺儿鸣2 小时前
502-002_Linux驱动开发模块化编程
linux·驱动开发·模块化编程
wuminyu3 小时前
C++协程实现接收端的零拷贝Buffer管理原理剖析
java·linux·c语言·jvm·c++
科力锐品牌君3 小时前
应用级灾备 | 海量非结构化数据如何实现高效数据保护
linux·运维·网络·安全·系统安全·数据安全·灾备
zhangrelay4 小时前
ROS项目设计案例智能大模型正经乱答案例
linux·笔记·学习·ubuntu·机器人
流浪0014 小时前
Linux系统篇39——线程(四) pthread库的由来和线程的创建与等待
linux·操作系统·线程·pthread库
Lancker4 小时前
chnroute-linux — 中国大陆 IP 段每日自动更新 + 「仅允许国内访问」落地
linux·运维·tcp/ip
辻弋2015 小时前
【无标题】
大数据·服务器·前端·搜索引擎·开源软件
波力海苔夹心脆6755 小时前
C# 值类型与引用类型详解:存储位置、赋值机制、参数传递、相等比较、装箱拆箱与常见陷阱
开发语言·jvm·经验分享·笔记·c#·.net
高山有多高5 小时前
【Linux笔记】Linux进程与守护进程
linux
大侠归来6 小时前
Ubuntu 搭建 APUE 环境:从源码编译到第一个示例跑通
linux·运维·ubuntu