すべてのプロダクト
Search
ドキュメントセンター

CloudOps Orchestration Service:ECS インスタンスへのアプリケーションのデプロイ

最終更新日:Feb 09, 2025

GitHub からコードをプルし、そのコードを使用して単一の Elastic Compute Service (ECS) インスタンスでアプリケーションをビルドおよびデプロイする場合、CloudOps Orchestration Service (OOS) テンプレートを実行してアプリケーションをビルドおよびデプロイできます。

説明

このサンプルテンプレートは、単一の ECS インスタンスにアプリケーションをビルドおよびデプロイするために使用されます。ビルドをリポジトリに公開したり、複数の ECS インスタンスにデプロイしたりする場合は、「イメージをビルドして Container Registry にアップロードする」、「Docker イメージを作成して Container Registry にアップロードし、ECS にデプロイする」、「ソフトウェアパッケージをビルドして OSS にアップロードする」、および「ソフトウェアパッケージをビルドして OSS にアップロードし、ECS インスタンスにデプロイする」をご参照ください。

前提条件

サンプルテンプレート

  1. OSS や GitHub など、コードソースを指定します。OOS は、コードソースからコードをプルするための一時 URL を生成します。

  2. OOS は、アプリケーションのビルドとデプロイに使用されるスクリプトを実行するために、コードを自動的にプルします。

コードソースを準備する

この例では、Spring Boot プロジェクトのサンプルコードを使用します。コードは Gitee と GitHub にアップロードされています。コードを使用する場合は、コードを自分のリポジトリにフォークする必要があります。コードアドレス:

テンプレートを作成する

  1. CloudOps Orchestration Service コンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[自動タスク] > [カスタムテンプレート] を選択し、[テンプレートの作成] をクリックします。

  3. [ビルドとデプロイ] セクションで、[acs-ecs-examplelocalbuildanddeployonsingleecsfromgit] を選択し、[次のステップ] をクリックします。

  4. [プロセス設定] タブで、パラメーターを設定し、[テンプレートの作成] をクリックします。

    1. 一時的な承認リンクを生成するためにコードソースを指定します。

      この例では、Gitee をコードソースとして使用します。[所有者][組織][リポジトリ][ブランチ] の各パラメーターを設定します。

      説明
      • Alibaba Cloud が GitHub または Gitee リポジトリにアクセスする権限を持っていない場合は、[必要な権限を付与する] をクリックします。

      • サンプルコードをフォークした場合、アカウントに属するすべてのリポジトリが [リポジトリ] ドロップダウンリストに自動的に表示されます。この場合、コードをフォークしたリポジトリを選択します。

      2024-12-16_11-42-41.png

    2. Gitee からコードをプルして、アプリケーションをビルドおよびデプロイします。

      アプリケーションをデプロイする ECS インスタンスを選択します。CodeResource を git に設定します。デフォルト値 authorizedUrl (前のタスクの出力) が CodeResourceUrl に使用されます。この例は参照用です。要件に基づいてスクリプトを指定できます。

      部署脚本.png

      サンプルスクリプト (Alibaba Cloud Linux 3)

      ### jar ファイルをビルドします。
      set -e
      yum install -y maven-3.5.4
      mvn package
      
      ### アプリケーションの以前のバージョン (存在する場合) を停止し、現在のバージョンをデプロイします。
      PID=$(ps -ef | grep "sample-spring-1.0-SNAPSHOT.jar" | grep -v "grep" | awk '{print $2}')
      if [ -n "$PID" ]; then
          kill -9 $PID
      fi
      java -jar target/sample-spring-1.0-SNAPSHOT.jar &

      サンプルスクリプト (Ubuntu)

      ### jar ファイルをビルドします。
      set -e
      apt install -y maven
      mvn package
      
      ### アプリケーションの以前のバージョン (存在する場合) を停止し、現在のバージョンをデプロイします。
      PID=$(ps -ef | grep "sample-spring-1.0-SNAPSHOT.jar" | grep -v "grep" | awk '{print $2}')
      if [ -n "$PID" ]; then
        kill -9 $PID
      fi
      java -jar target/sample-spring-1.0-SNAPSHOT.jar &

      サンプルスクリプト (CentOS)

      ### jar ファイルをビルドします。
      set -e
      yum install -y maven
      mvn package
      
      ### アプリケーションの以前のバージョン (存在する場合) を停止し、現在のバージョンをデプロイします。
      PID=$(ps -ef | grep "sample-spring-1.0-SNAPSHOT.jar" | grep -v "grep" | awk '{print $2}')
      if [ -n "$PID" ]; then
        kill -9 $PID
      fi
      java -jar target/sample-spring-1.0-SNAPSHOT.jar &
      説明

      テンプレートが実行されると、コードは /root/workspace/タスク ID ディレクトリ内のフォルダにプルされます。このフォルダは、ビルドおよびデプロイスクリプトの作業パスとしても使用されます。スクリプトでカスタムパスを指定することもできます。image

    3. テンプレートの作成 をクリックします。

テンプレートを実行する

  1. CloudOps Orchestration Service コンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[自動タスク] > [カスタムテンプレート] を選択します。

  3. カスタム テンプレート[実行の作成]アクション ページで、テンプレートを見つけ、 列の をクリックします。

  4. [基本情報] ステップで、パラメーターを設定し、[次のステップ: パラメーター設定] をクリックします。

  5. [パラメーター設定] ステップで、使用可能なパラメーターがない場合は [OK] をクリックします。

  6. [作成] をクリックします。

    タスク実行管理ページで、実行ステータスが [成功] の場合、実行は完了です。

    执行模板结果-zh.png

  7. ECS コンソール にログインします。

  8. ECS インスタンスを見つけ、インスタンスに接続します。

    詳細については、「Workbench を使用して SSH 経由で Linux インスタンスに接続する」をご参照ください。

  9. 次のコマンドを実行して、デプロイが成功したかどうかを確認します。

    curl http://localhost:8080/hello

    次のフィールドが返された場合、デプロイは成功です。image