UbuntuでASP.NET Coreをデプロイする方法


  1. Ubuntuに.NET Coreランタイムをインストールする:

    • Ubuntuのターミナルを開き、以下のコマンドを実行します:
      wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
      sudo dpkg -i packages-microsoft-prod.deb
      sudo apt-get update
      sudo apt-get install -y apt-transport-https
      sudo apt-get update
      sudo apt-get install -y dotnet-sdk-5.0
  2. ASP.NET Coreアプリケーションをビルドする:

    • 開発環境でASP.NET Coreアプリケーションをビルドします。これには、.csprojファイルがあるディレクトリで以下のコマンドを実行します:
      dotnet build
  3. アプリケーションをパブリッシュする:

    • ビルドが成功したら、アプリケーションをパブリッシュします。以下のコマンドを実行します:
      dotnet publish -c Release -o /var/www/myapp
  4. Nginxをインストールする:

    • ウェブサーバーとしてNginxを使用する場合は、以下のコマンドでNginxをインストールします:
      sudo apt-get install -y nginx
  5. Nginxの設定を編集する:

    • Nginxの設定ファイル/etc/nginx/sites-available/defaultを編集し、以下のように設定します:
      server {
       listen        80;
       server_name   example.com;
       location / {
           proxy_pass         http://localhost:5000;
           proxy_http_version 1.1;
           proxy_set_header   Upgrade $http_upgrade;
           proxy_set_header   Connection keep-alive;
           proxy_set_header   Host $host;
           proxy_cache_bypass $http_upgrade;
       }
      }
  6. Nginxを再起動する:

    • 設定を反映させるためにNginxを再起動します:
      sudo systemctl restart nginx

これで、ASP.NET CoreアプリケーションはUbuntu上でデプロイされ、Nginxを介してアクセスできるようになります。必要に応じて、SSL/TLS証明書の設定やセキュリティの強化など、さらなるカスタマイズが可能です。

このブログ投稿では、ASP.NET CoreアプリケーションのUbuntuへのデプロイに関する詳細な手順を提供しました。また、Ubuntuでのデプロイに関連するコード例も提供しました。