Linuxサービスとしての



ネットサービスとしてのネットAPIは、ホスティングに来る多くのオプションの一つです.
私が好きである1つのもの.ネットコアはどこでも実行されます.ランニング.LinuxサービスとしてNET APIを使用すると、異なる組織がインフラストラクチャを再利用することでコストを削減することができます.前に.NETコア.NETはWindowsとほぼ同義だった.唯一のサーバ.ネットはIISでした.
今、それはあなたのホスティングに来るときにオプションのトンを持っている.NETアプリケーション.
あなたはWindowsでそれを実行し続けるか?あなたは、NSSMでWindowsサービスとしてそれをホストして、インストールすることができます.あなたは、IIS Expressの代わりにKstrelを望みますか?心配しないでください.今日では、空は、それがホストをすることになる限界です.NET API.
あなたがする必要がある一つのことは、インストールすることです.サーバ上のネット.あなたはhereをインストールする方法を読むことができます.異なったLinuxディストリビューションで.(あなたがこれをしなかった場合や経験豊富なLinuxユーザーではない場合).

何が必要


puttyまたはLinuxサーバに接続する方法
サーバー上のsudoの権利または実行権

APIをLinuxサービスとして実行する


あなたのAPIが良い立場にあるならば、versioned,とT he right status codesとあなたがキーストを選んだならば、あなたがする必要がある唯一のものは、Aをつくることになっています.サービスファイルを使用してLinuxサーバにインストールします.私の場合、APIはRedHatディストリビューションでホストされました.
サービス内容はファイルである.サービスの拡張子(ファイルmyapi . serviceを呼び出しましょう).
.サービスファイルには、どこから実行するか、いくつかのフラグが必要な情報が含まれます.
[Unit]
Description=Awesome API
[Service]
WorkingDirectory=/var/opt/myapps/myapi
ExecStart=/usr/bin/dotnet /var/opt/myapps/myapi/MyApi.dll
Restart=always
RestartSec=10
SyslogIdentifier=myapi
User=root
Environment=ASPNETCORE_ENVIRONMENT=Development
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false
[Install]
WantedBy=multi-user.target
sudo権限を持っていると仮定すると、/etc/systemd/systemを実行してサービスを開始する必要があります

Linuxコマンド

systemctl start myapi.serviceはあなたのサービスを止めますsystemctl stop myapi.serviceがサービスを開始するsystemctl start myapi.serviceサービスの状態を返します.サービスが実行中であるかデバッグ目的のために確認したい場合に便利です.応答にはいくつかの情報が含まれています.これは設定の内容によって異なります.
Linuxサービスをアップロードして実行しているなら、https上で動作させる必要があるかもしれません.
別の記事では、NGINXリバースプロキシにHTTPSを設定する方法を見ることができます.
年には、.NET API as a Linux Serviceが初めて登場した.