Ubuntu 20.04系统服务配置中指定dotnet特定运行版本的方法问询
Ubuntu systemd服务指定dotnet 5运行的配置方法
方法1:通过运行时参数指定版本(更推荐)
dotnet 运行时支持通过--fx-version参数直接指定要使用的运行时版本,无需修改执行文件路径。
你提供的环境中已安装.NET 5运行时版本为5.0.12,直接修改service文件的ExecStart配置即可:
ExecStart=/usr/bin/dotnet --fx-version 5.0.12 /var/www/example.com/WebApplication.dll
注意:你原配置里的路径存在拼写错误,axample.com需改为实际的目录名example.com
如果不确定自己环境的运行时版本,可执行dotnet --list-runtimes查询所有已安装的运行时版本号。
方法2:通过项目目录global.json指定版本
你也可以在服务配置的WorkingDirectory对应目录(即/var/www/example.com)下新建global.json文件,内容如下:
{ "sdk": { "version": "5.0.403", "rollForward": "latestMinor" } }
配置完成后无需修改service文件的ExecStart配置,dotnet运行时会自动读取当前工作目录下的global.json选择对应版本运行。
配置生效步骤
修改完成后执行以下命令让配置生效:
- 重新加载systemd配置:
sudo systemctl daemon-reload - 重启对应服务:
sudo systemctl restart 你的服务名称.service - 验证服务运行状态:
sudo systemctl status 你的服务名称.service
内容的提问来源于stack exchange,提问作者Kursad
相关产品推荐
相关产品推荐

