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

CloudOps Orchestration Service:Git デプロイメント

最終更新日:Jun 05, 2026

Git リポジトリから Elastic Compute Service (ECS) インスタンスまたは Auto Scaling (ESS) のスケーリンググループにアプリケーションをデプロイします。

仕組み

重要
  • Auto Scaling (ESS) グループであるアプリケーショングループにデプロイメントする場合、デプロイメント中はスケーリングアクティビティが一時停止します。デプロイメントが成功したか失敗したかにかかわらず、デプロイメントが完了すると自動的に再開されます。

  • デプロイメントプロセスは、停止・起動の原則に従います。各デプロイメントでは、まず停止スクリプトが実行され、次に起動スクリプトが実行されます。

  1. デプロイメントの作成と公開

    デプロイメントのアプリケーションソースファイル情報、起動スクリプト、および停止スクリプトを設定します。

    リリースタスクを作成し、リリースモードを選択して、ターゲットアプリケーショングループにデプロイメントを公開します。

  2. 自動デプロイプロセス

    1. デプロイ情報の取得:Git リポジトリの詳細と起動/停止スクリプト。

    2. 指定されたブランチから作業ディレクトリの code_deploy_application フォルダーにコードをプルします。

    3. 停止スクリプトを実行して、現在のアプリケーションを停止します。

    4. 起動スクリプトを実行して、新しいバージョンのアプリケーションを起動します。

使用上の注意

  • Linux インスタンスのみをサポートしています。

  • 起動スクリプトと停止スクリプトは Shell スクリプトである必要があります。

手順

  1. アプリケーションを作成し、ECS インスタンスをインポートします。

    1. ECS インスタンスがない場合は、ECS コンソール - Custom Launch ページで、パブリック IP アドレスを持つ Linux インスタンスを作成します。

      推奨イメージ:Alibaba Cloud Linux 3.2104 LTS 64 ビットまたは Ubuntu 22.04 64 ビット。サンプルスクリプトはこれらのイメージを対象としています。異なるイメージを使用する場合は、スクリプトを修正してください。
    2. ECS コンソール - アプリケーション管理 ページに移動し、[既存のリソースから作成] をクリックします。アプリケーションとアプリケーショングループを作成し、ECS インスタンスをアプリケーショングループにインポートします。

  2. デプロイを作成します。

    1. サンプルコードを自分の Git リポジトリにフォークします。

      Gitee または GitHub アカウントが必要です。中国本土のインスタンスには Gitee を使用します。
    2. ECS コンソール - アプリケーション管理 ページに移動します。[マイアプリケーション] タブで、ターゲットアプリケーションの名前をクリックします。

    3. アプリケーションの詳細ページで、[デプロイメント] タブを選択し、[デプロイメントの作成] をクリックします。

    4. デプロイメントの作成 ページで、[RevisionType]Git リポジトリ に設定し、パラメーターを設定してから OK をクリックします。

      • Git リポジトリ情報:コードを格納するリポジトリを指定します。

        初めて使用する際は、画面の指示に従って Git リポジトリへのアクセスを承認してください。
      • 作業ディレクトリ:起動スクリプトと停止スクリプトが実行されるディレクトリです。例:/root/deploy。コードはこのディレクトリ内の code_deploy_application フォルダーにプルされます。

      • アプリケーションの起動スクリプト

        Alibaba Cloud Linux

        # 注:コードは作業ディレクトリ内の code_deploy_application フォルダーにダウンロードされます。
        
        # 現在のバージョンのアプリケーションを起動します。
        start_application() {
         cd ./code_deploy_application
         set -e
         yum install -y maven-3.5.4
         java -jar sample-spring-1.0-SNAPSHOT.jar &
        }
        
        start_application

        Ubuntu

        # 注:コードは作業ディレクトリ内の code_deploy_application フォルダーにダウンロードされます。
        
        # 現在のバージョンのアプリケーションを起動します。
        start_application() {
         cd ./code_deploy_application
         set -e
         apt update
         apt install -y maven
         java -jar sample-spring-1.0-SNAPSHOT.jar &
        }
        
        start_application
      • アプリケーションの停止スクリプト

        # アプリケーションが実行中の場合は停止します。
        stop_application() {
          PID=$(ps -ef | grep "sample-spring-1.0-SNAPSHOT.jar" | grep -v "grep" | awk '{print $2}')
          if [ -n "$PID" ]; then
            kill -9 $PID
          fi
        }
        
        stop_application
  3. デプロイメントリストに戻ります。作成したデプロイメントを見つけて [公開] をクリックします。表示されるダイアログボックスで、ターゲットグループを選択し、[OK] をクリックしてデプロイメントを開始します。

  4. 結果を検証します。

    1. ターゲットインスタンスの詳細ページに移動します。[接続] をクリックし、[ワークベンチ] を選択します。ページのプロンプトに従ってターミナルにログインします。

    2. curl http://localhost:8080/hello コマンドを実行します。Alibaba Spring Sample! が返された場合、デプロイメントは成功です。

主なパラメーター

パラメーター

説明

Platform

コードがホストされている Git プラットフォームを選択します。

Owner

リポジトリのオーナーを選択します。初めて使用する際には承認が必要です。

Organization

個人またはオーガニゼーションのリポジトリを選択します。

Repository

コードリポジトリを選択します。

Branch

デプロイするブランチを選択します。

CommitId

自動入力されます。ブランチを選択すると、システムが最新の CommitId を取得します。

作業ディレクトリ

起動スクリプトと停止スクリプトが実行されるディレクトリです。

  • 絶対パスを入力します。

  • コードはこのディレクトリ内の code_deploy_application フォルダーにプルされます。

  • 存在しないディレクトリは自動的に作成されます。

アプリケーションの起動スクリプト

アプリケーションを起動するための Shell スクリプトです。

アプリケーションの停止スクリプト

アプリケーションを停止するためのシェルスクリプト。
スクリプトは、現在および以前のバージョンのアプリケーションを正しく停止する必要があります。アプリケーションが実行されていない場合でも、スクリプトはエラーなしで正常に終了する必要があります。

たとえば、次のスクリプトは my-container という名前のコンテナーを停止します。このスクリプトは、コンテナーのすべてのバージョンが同じ名前であることを前提としています。コンテナーが存在しない場合、スクリプトはエラーを報告しません:

container_name="my-container"
container_id=$(docker ps -aq -f name=${container_name}) 
if [ -n "$container_id" ]; then
  docker rm -f $container_id
fi