Nginx を使用して DoNetCore を Alibaba Cloud にデプロイする方法

Nginx を使用して DoNetCore を Alibaba Cloud にデプロイする方法

基本的な環境設定

まずはご自身でドメイン名とサーバーを購入してください

クラウドサーバーECSに基づいてアプリケーションインスタンスを作成し、システムイメージとしてUbuntu 16.04を選択し、ローカルマシンにSSH経由でリモート接続し、関連する構成を実行します。
SSH ルート@http://39.108.48.203/

...

sudo apt-getアップデート
sudp apt-get アップグレード
sudo apt-get 自動削除
sudo apt-get clean

Nginxのインストールと設定

sudo apt-get でnginxをインストールします
sudo サービス nginx を開始
sudo gedit /etc/nginx/sites-available/default

デフォルトファイルを設定し、ファイルの最後に次のノード情報を設定します。

# example.com の仮想ホスト設定
#
# これをsites-available/の下の別のファイルに移動し、シンボリックリンクを作成することができます
# 有効にするには sites-enabled/ に追加します。
#
サーバー{
 聞く 80;
 # ウェブサイト ファイルのターゲットの場所は、root /home/hippie/website/wwwroot です。
 # server_name ウェブサイト名;
  位置 / {
   proxy_pass http://localhost:5000;
   プロキシ_http_バージョン 1.1;
   proxy_set_header アップグレード $http_upgrade;
   proxy_set_header 接続キープアライブ;
   proxy_set_header ホスト $host;
   proxy_cache_bypass $http_upgrade;
   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   proxy_set_header X-Forwarded-Proto $scheme;
 }
}

設定を確認して更新する

nginx を -t で実行します。
sudo nginx -s リロード

DotNetCoreをインストールする

最新のインストール手順については、公式ウェブサイトをご覧ください: .NetCore ダウンロード

展開プロセス

VisualStudio2017 を開き、公開するプロジェクトを右クリックして [公開] をクリックし、関連する構成については下の図を参照してください。

公開するには、「保存」ボタンをクリックします。次に、公開フォルダをサーバー上の対応する場所にアップロードします。アップロードが成功したら、以下を実行します。
dotnet run app.dll

何も問題がなければ、現時点では IP または Web サイトのドメイン名を通じてアクセスできます。

デーモンプロセスの作成

上記の操作を実行した後も、プログラムは長時間実行できないため、デーモンプロセスを通じてWebサイトを管理する必要があります。

sudo apt-get スーパーバイザーをインストール
sudo vim /ect/supervisor/conf.d/website.conf

website.conf ファイルを設定する

[プログラム:ウェブサイト]
#実行するコマンド command=/usr/bin/dotnet Attention.dll 
#コマンド実行ディレクトリ directory=/home/hippie/website 
#環境変数 environment=ASPNETCORE__ENVIRONMENT=Production 
 #プロセス実行ユーザーID user=www-data 
ストップシグナル=INT
#自動的に起動するかどうか autostart=true
#自動的に再起動するかどうか autorestart=true
#自動再起動間隔 startsecs=1 
#標準エラーログ stderr_logfile=/var/log/website.err.log 
#標準出力ログ stdout_logfile=/var/log/website.out.log

このとき、デーモンプロセスを起動するために次のコマンドを実行します。

sudo supervisorctl シャットダウン && sudo supervisord -c /etc/supervisor/supervisord.conf
supervisorctl シャットダウン 
sudo サービススーパーバイザーの開始

さて、これで、リモート接続を閉じて Web サイトにアクセスしてみることができます。正常にアクセスできる場合は、設定が機能していることを意味します。

要約する

上記は、Nginxと組み合わせてDoNetCoreをAlibaba Cloudにデプロイするために紹介したインストールと設定方法です。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。

以下もご興味があるかもしれません:
  • Alibaba Cloud での Ubuntu 1.4 Flask + WSGI + Nginx の展開の詳細説明
  • nginx + nodeを使用してAlibaba Cloudにhttpsをデプロイする詳細な手順
  • Vue プロジェクトを nginx にデプロイする方法 (履歴モード)
  • Angular プロジェクトの作成、パッケージ化から nginx の展開までの全プロセスを記録します。
  • 初心者のための Docker と NGINX の導入手順の詳細
  • DockerでNginx+PHP+MySQL環境を構築し、WordPressをデプロイする
  • Nginx + Tomcat リバースプロキシが 1 つのサーバーに複数のサイトを効率的に展開する方法の詳細な説明

<<:  forEachでawaitが機能しない問題を解決する

>>:  MySQLトリガーの詳細な説明と簡単な例

推薦する

Lua モジュールを使用して WAF を実装する Nginx の原理の分析

目次1. WAFの背景2. WAFとは3. 動作原理4. WAF機能5. WAFと従来のファイアウォ...

CentOS7で新しいデータディスクをマウントするための完全な手順

序文新しい VPS を購入しました。新しい VPS のデータ ディスクはデフォルトではシステムにマウ...

MySql 5.7.21 無料インストール バージョンの構成方法 (Win10 の場合)

1.インストールしたい場所に解凍し、my.iniファイルを作成します。 my.iniの内容は次のと...

MySQL シリーズ 4 SQL 構文

目次チュートリアルシリーズ1. SQL言語の紹介と仕様2. データベース操作1. ライブラリを作成す...

W3C 検証に合格するにはどうすればいいですか?

W3C では、さまざまなタグの規定を設定するだけでなく、Web ページの作成者が実際に W3C 規...

Linux7 ベースの Hadoop のインストールと構成の詳細なグラフィック説明

上記のように材料を準備します(ps: hadoop-3.1.2-srcはhadoop-3.1.2に変...

独自のサーバーを素早く構築する方法の詳細なチュートリアル(Java 環境)

1. サーバーの購入1. 私はAlibaba Cloudのサーバーを選択しました。学生向けで月額9...

Vuexの役割についての深い理解

目次概要コンポーネント間でデータを共有する方法Vuex の原則の紹介Vuexはコンポーネントのグロー...

Linux ディスク管理 LVM の使用

1. LVM の概要Linux ディスクを管理するときに、このような状況に遭遇することがよくあります...

MySQLコマンドが中国語で入力できない問題の解決方法

問題を見つける最近、MySQL コマンドを使用して MySQL サーバーに接続したときに、以下のよう...

特定の部門 ID に基づいて、すべての下位レベルの複数レベルのサブ部門を照会する MySQL の例

シミュレーションテーブルとデータスクリプト次の SQL ステートメントをコピーして、sys_dept...

MySQLクライアント認証後の接続失敗の問題に対する完璧なソリューション

MySQL 環境をローカル (192.168.1.152) にデプロイし、リモート クライアント 1...

Linuxのwhichコマンドの具体的な使い方

Linux でファイルを見つけたいのに、その場所がわからないことがよくあります。次のコマンドを使用し...

MySQL で複数のフィールドを連結する詳細な例

MySQL クエリ結果の行フィールドの結合は、次の 2 つの関数を使用して実装できます。 1. co...