Linux 仮想マシンで実行されている NGINX Web サーバーに Web アプリをデプロイする (クラシック)
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019 | TFS 2018
注意
YAML パイプラインを使って Linux 仮想マシンにアプリケーションをデプロイする場合は、「Linux 仮想マシンへのデプロイ」を参照してください。
クラシック Azure Pipelines を使って、Web アプリをビルドし、Linux 仮想マシン上で実行されている NGINX Web サーバーにデプロイする方法について説明します。
前提条件
- Azure DevOps 組織。 無料で作成できます。
- アクティブなサブスクリプションが含まれる Azure アカウント。 まだ Azure アカウントをお持ちでない場合は、無料で作成してください。
- GitHub アカウント。 無料で作成できます。
Linux VM の前提条件
- Nginx Web サーバーを使った Linux VM がない場合は、このクイック スタートの手順に従って Azure に作成します。
コードを取得する
リポジトリがない場合は、このチュートリアルに従って次のサンプル プロジェクトを使用します。
https://github.com/MicrosoftDocs/pipelines-javascript
アプリの構築
配置グループを設定する
配置グループを使用すると、ご利用のアプリのホストに使用するサーバーをより簡単にまとめられます。 配置グループとは、Azure Pipelines エージェントを搭載したマシンのコレクションです。 各マシンは Azure Pipelines と対話して、アプリのデプロイを調整します。
Linux VM への SSH セッションを開きます。 これを行うには、Azure portal の右上にある [Cloud Shell] ボタンを使用します。
次のコマンドを実行してセッションを開始します。 プレースホルダーを、VM の IP アドレスに置き換えます。
ssh <publicIpAddress>
次のコマンドを実行して、Linux 仮想マシンにビルドおよびリリース エージェントを設定するために必要な依存関係をインストールします。 詳しくは、「セルフホステッド Linux エージェント」をご覧ください。
sudo apt-get install -y libunwind8 libcurl3
Azure DevOps Web ポータルで、[パイプライン] を選び、[配置グループ] を選びます。
[配置グループの追加] を選びます (または、既存の配置グループがある場合は [新規] を選びます)。
myNginx などのグループの名前を入力し、[作成] を選びます。
[登録するターゲットの種類] に [Linux] を選び、[認証用にスクリプト内の個人用アクセス トークンを使用する] のチェック ボックスがオンになっていることを確認します。 [スクリプトをクリップボードにコピー] を選びます。 このスクリプトは、VM にエージェントをインストールして構成します。
Azure portal の SSH セッションに戻り、スクリプトを貼り付けて実行します。
エージェントのタグを構成するように求められたら、Enter キーを押してスキップします。
スクリプトが完了するまで待機すると、"Azure Pipelines エージェントを開始しました" というメッセージが表示されます。 「q」と入力してファイル エディターを終了し、シェル プロンプトに戻ります。
Azure DevOps ポータルに戻り、[配置グループ] ページで myNginx 配置グループを開きます。 [ターゲット] タブを選び、お使いの VM が一覧表示されていることを確認します。
リリース パイプラインを作成する
[パイプライン]>[リリース] を選び、[新しいパイプライン] を選びます。
[空のジョブ] を選びます。
[成果物の追加] を選び、ビルド成果物をリンクします。 [ビルド] を選び、ドロップダウン メニューから [プロジェクト] と [ソース] を選びます。 完了したら [追加] を選択します。
[継続的デプロイ] アイコンを選び、トグル ボタンをクリックして継続的デプロイ トリガーを有効にします。 メイン ブランチをビルド ブランチ フィルターとして追加します。
[タスク] を選び、[エージェント ジョブ] を選んで削除します。
省略記号アイコンを選び、[配置グループ ジョブの追加] を選びます。 このジョブに追加するタスクは、配置グループ内の各サーバーで実行されます。
[配置グループ] ドロップダウン メニューから、前に作成した配置グループを選びます。
+ を選び、新しいタスクを追加します。 Bash を検索し、[追加] を選んでパイプラインに追加します。
[参照] ボタンを選び、deploy.sh スクリプト ファイルのパスを追加します。 nodeJS デプロイ スクリプトのサンプルについては、こちらを参照してください。
完了したら、[保存] を選択します。
アプリのデプロイ
[リリース] を選び、[リリースの作成] を選びます。
使用する成果物のバージョンが選ばれていることを確認して、[作成] を選びます。
情報バーのメッセージにあるリリースのリンクを選びます。 たとえば、"リリース Release-1 がキューに登録されました" などが挙げられます。
[ステージ] の状態リンクを選んで、デプロイ ログを表示します。
リリースが完了したら、アプリに移動し、そのコンテンツを確認します。