VisualStudioCode创建的asp.net core控制台程序部署到linux

1、asp.net core控制台程序

static void Main(string[] args) { int times=10; while(times>=0) { Console.WriteLine("Hello World!"); times--; Thread.Sleep(1000); } }

 

2、发布

发布前,修改test2.csproj文件(项目名称为test2)

<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>netcoreapp2.1</TargetFramework> <RuntimeIdentifier>centos.7-x64</RuntimeIdentifier> </PropertyGroup></Project>

主要添加 <RuntimeIdentifier>centos.7-x64</RuntimeIdentifier> 这句。

会发布在test2\bin\Debug\netcoreapp2.1\centos.7-x64目录下,如下图:

把所有文件上传到linux服务器(我的linux上放代码目录为/var/wwwroot/netconsole)

切到publish下(即/var/wwwroot/netconsole/publish),输入命令“dotnet test2.dll”,如下图:

 

3、创建服务

新建自定义服务:vim /etc/systemd/system/mydotnetconsole.service,服务代码内容如下:

[Unit]Description=dotnet console demo running on linux[Service]WorkingDirectory=/var/wwwroot/netconsoleExecStart=/usr/bin/dotnet /var/wwwroot/netconsole/test2.dllRestart=alwaysRestartSec= 10SyslogIdentifier=dotnet core consoleUser=rootEnvironment=ASPNETCORE_ENVIRONMENT=Production [Install]WantedBy=multi-user.target

启动服务 systemctl start mydotnetconsole.service

查看 systemctl status netconsole -l     如下图:

 

相关文章