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> 这句。

如果把centos.7-x64改为win10-x64,则发布为exe程序,运行在windows上。

会发布在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     如下图:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章