统信 UOS 部署
独立部署
安装 dotnet 环境
- 由于当前安装系统版本无
APT包管理器,所以使用 手动安装- 参考 使用安装脚本或通过提取二进制文件在 Linux 上安装 .NET
下载运行时或SDK
一般安装 asp.net core 运行时即可,若需编译项目则安装SDK

安装部署
图形操作
找到下载的压缩包

解压至自定义目录
右键选择解压操作

全选文件,右键提取至自定义的目录,当前示例放置于
/usr/bin/dotnet下也可点击下方
解压到:自定义目录选择解压路径
命令操作
执行命令
此命令将生成指定目录
/usr/bin/dotnet,并将下载的压缩包aspnetcore-runtime-9.0.0-linux-x64.tar.gz解压至该目录下bashmkdir -p /usr/bin/dotnet && tar zxf aspnetcore-runtime-9.0.0-linux-x64.tar.gz -C /usr/bin/dotnet在 dotnet 环境压缩包同级目录下执行

访问解压路径,文件已解压至该目录

查看是否成功
配置环境变量
找到
/etc/profile文件
添加以下变量,此配置方式为
永久且全部用户都生效,/usr/bin/dotnet为自定义的 dotnet 运行时存放目录bashexport PATH=$PATH:/usr/bin/dotnet export DOTNET_ROOT=/usr/bin/dotnet
重新加载环境变量
source:执行文件并从文件中加载变量及函数到执行环境,profile即/etc/profile文件bashsource profile
校验环境
dotnet --info
发布 Linux 版本程序
同 Linux 环境,参考 Linux环境发布
当前示例将程序部署文件上传至
/var/www
运行程序
打开系统终端

来到上传的程序部署文件所在目录

执行运行命令
bashdotnet Westcore.BCS.WebApi.dll --urls "http://*:5556"
配置自启
与 Linux 环境一致,参考 配置自启
创建
westcore-backend.service文件/usr/bin/dotnet/dotnet为 dotnet 可执行文件所在路径ini[Unit] Description=Westcore backend web api. [Service] WorkingDirectory=/var/www/ ExecStart=/usr/bin/dotnet/dotnet /var/www/Westcore.BCS.WebApi.dll Restart=always # Restart service after 10 seconds if the dotnet service crashes: RestartSec=10 KillSignal=SIGINT # 系统日志标识 SyslogIdentifier=backend-api User=root # 环境变量 Production Environment=ASPNETCORE_ENVIRONMENT=Development Environment=ASPNETCORE_URLS=http://*:5555/ Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false [Install] WantedBy=multi-user.target检查执行权限

或使用命令赋权
bashchmod 755 westcore-backend.service启动服务

启用服务

校验是否自启

Docker 容器独立部署
与 Linux 下部署一致,参考 Linux 环境
程序镜像
本地编译
将代码上传至部署环境
也可使用源代码托管工具进行拉取

使用
Dockerfile编译账户名及仓库名请以实际为准,镜像标签自定义命名即可
bashdocker build -t 账户名/仓库名:backend.api .
编译完成

远程仓库
登录账户
由于是私有库,所以需要登录
bashdocker login -u <username>
拉取镜像
bashdocker pull nathanhao/repo:backend.v1
运行容器
与 Windows 下使用 CLI 运行容器 操作一致
执行命令
bashdocker run -it -d --name website-backend --restart always -p 5556:8080 -v /var/www:/app/wwwroot -e ASPNETCORE_ENVIRONMENT=Development -e TZ=Asia/Shanghai --user root nathanhao/repo:backend.v2
杂项
容器内无权限

运行容器时使用
--user指定运行用户
docker run -it -d --name website-backend --restart always -p 5556:8080 -v /var/www/wwwroot:/app/wwwroot -e ASPNETCORE_ENVIRONMENT=Development -e TZ=Asia/Shanghai --user root nathanhao/repo:backend.v2
