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/netconsole
ExecStart=/usr/bin/dotnet /var/wwwroot/netconsole/test2.dll
Restart=always
RestartSec= 10
SyslogIdentifier=dotnet core console
User=root
Environment=ASPNETCORE_ENVIRONMENT=Production 

[Install]
WantedBy=multi-user.target

启动服务 systemctl start mydotnetconsole.service

查看 systemctl status netconsole -l     如下图:

猜你喜欢

转载自www.cnblogs.com/qk2014/p/10088798.html