alibabacloud-tech-solution-animation-creation-auto-deploy
alibabacloud-tech-solution-animation-creation-auto-deploy について
Alibaba Cloudの「Build AI Animation Story Creation App」ソリューションを自動デプロイするスキルです。CLIでクラウドリソースを用意し、OSS、DashScope、FC Appを構成してアクセスURLを返します。デプロイ後、アプリの操作は行いません。
主な機能
- 01Bailian APIキーとOSS Bucketの作成
- 02Devsテンプレートからプロジェクトを作成
- 03ComfyUIとWebUIの関数をデプロイ
- 04状態確認とカスタムドメイン作成
- 05アプリのアクセスURLを出力
活用シーン
- 01AIアニメーションストーリーアプリのデプロイ
- 02必要なクラウドリソースの自動構成
- 03デプロイ後のアプリURL取得
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ aliyun/ alibabacloud-aiops-skills --skill alibabacloud-tech-solution-animation-creation-auto-deployインストール後、Claude Code で/alibabacloud-tech-solution-animation-creation-auto-deployを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/acceptance-criteria.mdcli-installation-guide.mdram-policies.mdrelated-commands.mdverification-method.mdscripts/attach-policies.shcreate-api-key.shcreate-custom-domain.shdeploy-environment.shpoll-deploy-status.shrender-and-update.shsetup-role.sh詳細
AI アニメーションストーリー作成アプリの構築 — 自動デプロイ
Alibaba Cloud の「AI アニメーションストーリー作成アプリ」ソリューションを自動的にデプロイします。アプリケーションにアクセスできるようになった時点でデプロイを停止します。実際に操作するのはユーザーです。
アーキテクチャ: OSS Bucket + DashScope (Bailian API Key) + FC App (ComfyUI + WebUI — Devs テンプレートを使ってデプロイする 2 つの関数)
インストール
前提条件(スクリプトの実行時依存関係):
依存関係 最小バージョン 確認コマンド 用途 bash4.0+ bash --versionスクリプトの実行環境 aliyunCLI>= 3.3.7 aliyun versionAlibaba Cloud リソースの操作( ai-modeサブコマンドには 3.3.7 以降が必要です)python33.6+ python3 --versionJSON の解析 curl任意 curl --versionHTTP API 呼び出し Aliyun CLI がインストールされていない場合、またはバージョンが古い場合は、
references/cli-installation-guide.mdを参照してインストールしてください。 次に、自動プラグインインストールを有効にするため、[必須]aliyun configure set --auto-plugin-install trueを実行してください。
CLI の初期化(コアワークフローの前に必ず実行)
AI-Mode を有効にし、専用の User-Agent を設定して、プラグインを更新します。これにより、以降のすべての CLI 呼び出しに適切なタグが付与され、最新バージョンのプラグインが使用されます。
aliyun configure ai-mode enable
aliyun configure ai-mode set-user-agent --user-agent "AlibabaCloud-Agent-Skills/alibabacloud-tech-solution-animation-creation-auto-deploy"
aliyun plugin update
認証
事前確認:Alibaba Cloud の認証情報が必要です
セキュリティルール:
- AK/SK の値を読み取ったり、エコーしたり、表示したりすることは絶対にしないでください
- 会話中やコマンドラインで AK/SK を直接入力するようユーザーに求めることは絶対にしないでください
- 認証情報の値を直接指定して
aliyun configure setを実行することは絶対にしないでください- 認証情報の状態確認には
aliyun configure listのみを使用してくださいaliyun configure list出力を確認し、有効なプロファイル(AK、STS、または OAuth ID)があるか確認してください。
有効なプロファイルがない場合は、ここで停止してください。
- Alibaba Cloud Console から認証情報を取得します
- このセッション外で認証情報を設定します
aliyun configure listに有効なプロファイルが表示されたら、戻って再実行します
RAM ポリシー
必要な権限の一覧は references/ram-policies.md を参照してください。
必須のシステムポリシー: AliyunFCFullAccess、AliyunOSSFullAccess
追加の権限: Devs 関連の権限(devs:CreateProject、devs:RenderServicesByTemplate、devs:UpdateEnvironment、devs:DeployEnvironment、devs:ListEnvironments、devs:GetEnvironment)
コアワークフローの前に、必要なポリシーを自動的に確認してアタッチしてください:
bash scripts/attach-policies.sh
[MUST] 権限エラーへの対応: 実行中のどの時点でも、権限エラーによってコマンドまたは API 呼び出しが失敗した場合は、次の手順に従ってください。
references/ram-policies.mdを読み、この SKILL に必要な権限の全一覧を確認しますram-permission-diagnoseスキルを使用して、必要な権限の申請をユーザーに案内します- 必要な権限が付与されたことをユーザーが確認するまで待機します
パラメーターの確認
重要:パラメーターの確認 — コマンドまたは API 呼び出しを実行する前に、 すべてのパラメーターが固定値、または自動生成・作成された値であることを確認します。ユーザーによる手動入力は不要です。
| パラメーター | 必須 | 説明 | 値 |
|---|---|---|---|
RegionId | はい | デプロイ先リージョン(FC と OSS は同じリージョン) | 固定値 cn-hangzhou |
BUCKET_NAME | はい | OSS Bucket 名 | 自動生成 animation-story-<6 random lowercase letters> |
API_KEY | はい | Bailian(DashScope)API キー | aliyun modelstudio create-api-key で自動作成 |
PROJECT_NAME | はい | Devs プロジェクト名 | 自動生成 animation-creation-<6 random lowercase letters> |
コアワークフローを開始する前に、シェルで次の変数を設定してください(以降のすべてのコマンドで、これらを直接参照します):
# Generate random names
BUCKET_NAME="animation-story-$(cat /dev/urandom | LC_ALL=C tr -dc 'a-z' | head -c 6)"
PROJECT_NAME="animation-creation-$(cat /dev/urandom | LC_ALL=C tr -dc 'a-z' | head -c 6)"
echo "BUCKET_NAME=$BUCKET_NAME, PROJECT_NAME=$PROJECT_NAME"
コアワークフロー
ステップ 1:Bailian API キーを作成する(CLI)
aliyun modelstudio CLI を使って、ワークスペースを自動的に取得し、API キーを作成します。
source scripts/create-api-key.sh
注記:
sourceを使用して、API_KEY変数が現在のシェルにエクスポートされるようにしてください。スクリプトはデフォルトのワークスペースを自動的に取得し(存在しない場合は作成します)、API キーを作成して、その値全体を出力します。
ステップ 2:OSS サービスを有効化してバケットを作成する(CLI)
注記: OSS CLI プラグインでは、User-Agent の設定に
--user-agentではなく--uaフラグを使用します。
まず OSS サービスを有効化します(すでに有効な場合は ORDER.OPEND が返されますが、無視して構いません)。
aliyun ossadmin open-oss-service --endpoint oss-admin.aliyuncs.com --force --user-agent AlibabaCloud-Agent-Skills/alibabacloud-tech-solution-animation-creation-auto-deploy 2>&1 || true
バケットを作成します。
aliyun oss mb "oss://$BUCKET_NAME" --region cn-hangzhou --ua AlibabaCloud-Agent-Skills/alibabacloud-tech-solution-animation-creation-auto-deploy
確認します。
aliyun oss stat "oss://$BUCKET_NAME" --ua AlibabaCloud-Agent-Skills/alibabacloud-tech-solution-animation-creation-auto-deploy
ステップ 3:Devs プロジェクトを作成する(CLI)
CreateProject API を使ってプロジェクトを作成します。templateConfig でテンプレート名とパラメーターを指定すると、Devs が production 環境を自動的に作成します。
注記: CreateProject はプロジェクトと空の環境を作成するだけで、デプロイは自動的に開始しません。デプロイを完了するには、続けて RenderServicesByTemplate、UpdateEnvironment、DeployEnvironment を実行する必要があります。
aliyun devs create-project --body "{
\"name\": \"$PROJECT_NAME\",
\"spec\": {
\"templateConfig\": {
\"templateName\": \"animation-creation\",
\"parameters\": {
\"region\": \"cn-hangzhou\",
\"bailian_api_key\": \"$API_KEY\",
\"ossBucket\": \"$BUCKET_NAME\"
}
}
}
}" --user-agent AlibabaCloud-Agent-Skills/alibabacloud-tech-solution-animation-creation-auto-deploy
テンプレートパラメーターに関する注記(確認済み — 変更しないでください):
region:cn-hangzhou固定bailian_api_key:ステップ 1 で自動作成した Bailian API キーossBucket:ステップ 2 で作成した OSS バケット名(oss://接頭辞なし)- すべてのパラメーターは
variableValuesではなく、parametersで渡します
ステップ 4:テンプレートをレンダリングして環境を設定する(CLI)
このステップのすべてのコマンドでは、シェル変数
MY_UID、PROJECT_NAME、BUCKET_NAME、API_KEYを使用します。ステップ 1 とパラメーターの確認を実行済みであることを確認してください。
まず、現在のユーザー UID を取得し、ロールの信頼ポリシーを確認します。
source scripts/setup-role.sh
注記:
sourceを使用して、MY_UID変数が現在のシェルにエクスポートされるようにしてください。スクリプトはロールが存在するかどうかを自動的に確認し、存在しない場合は作成します。このロールは標準の Devs ロールで、通常、FC コンソールのアプリケーション機能を初めて使うと自動的に作成されます。
4a. テンプレートをレンダリング → JSON を構築 → 環境を更新(一括スクリプト)
以下のスクリプトは、テンプレートのレンダリング → カスタムドメインの除外 → roleArn の追加 → UpdateEnvironment の呼び出しを自動的に行います。 エージェントが JSON を手動で処理する必要はありません。
bash scripts/render-and-update.sh
重要な注意事項(スクリプトに組み込み済み — 手動での処理は不要):
custom-domainサービスは自動的に除外されます(「Unknown service type」エラーの原因となるため)roleArnは自動的に追加されます- データの受け渡しには
--bodyを使用します(--specでは、深くネストされた JSON を正しく渡せません)
4b. デプロイを開始する
レート制限保護機能を内蔵: スクリプトは 60 秒間隔で最大 3 回再試行し、404 が発生すると直ちに停止します。スクリプトを直接実行してください —
deploy-environmentを手動で呼び出さないでください。
bash scripts/deploy-environment.sh
ステップ 5:デプロイ状況をポーリングする
デプロイは非同期で行われるため、完了するまでポーリングします(通常、5~15 分かかります)。以下のスクリプトを直接実行してください。
bash scripts/poll-deploy-status.sh
ステップ 6:カスタムドメインを作成する
カスタムドメインが必要な理由: FC のトリガー URL(
*.fcapp.run)はContent-Disposition: attachmentレスポンスヘッダーを強制するため、ブラウザーは HTML を表示せずにダウンロードします。アプリケーションを正常に動作させるには、カスタムドメイン(*.devsapp.net)が必要です。
ヘルパー関数の作成には、FC 2.0 API(
aliyun fc-open)を必ず使用してください。 FC 3.0 では関数名に$を使用できません。--auto-plugin-install true設定により、fc-openプラグインが自動的にインストールされます。
以下の完全なスクリプトを直接実行してください(設定が必要なのは MY_UID と PROJECT_NAME 変数のみです)。
bash scripts/create-custom-domain.sh
ステップ 7:アクセス URL の取得(ここで停止)
アクセス URL は、ステップ 6 のスクリプトの最後に自動的に出力されます。形式:
http://${PROJECT_NAME}-web.fcv3.${MY_UID}.cn-hangzhou.fc.devsapp.net/
ここで停止します。ステップ 6 の出力からアクセス URL をユーザーに提示し、アプリを自分で試してもらってください。ユーザーに代わってアプリを操作しないでください。
⚠️ 安全に関する注意 — アクセス URL を提示する際は、必ずユーザーに次のことを伝えてください: この URL はインターネット経由で直接アクセスできます。信頼できない相手とむやみに共有しないでください。許可されていないアクセスにより、次の事態が発生する可能性があります:
- クラウドリソースの消費: アクセスのたびに関数コンピューティングのリソースと百炼 API の呼び出し枠が消費され、追加料金が発生する可能性があります。
- プライバシー情報の漏えい: 生成されたアニメーションストーリーやアップロードした画像などに、個人情報や機密情報が含まれる可能性があります。
クリーンアップ
デプロイ済みリソースをクリーンアップするには、次の順序で削除します(PROJECT_NAME、MY_UID、BUCKET_NAME、API_KEY_ID 変数が必要です):
# 1. Delete FC custom domain
aliyun fc delete-custom-domain --domain-name "${PROJECT_NAME}-web.fcv3.${MY_UID}.cn-hangzhou.fc.devsapp.net" --region cn-hangzhou --user-agent AlibabaCloud-Agent-Skills/alibabacloud-tech-solution-animation-creation-auto-deploy
# 2. Delete Devs project (also deletes associated FC functions; --force true skips environment resource check)
aliyun devs delete-project --name "$PROJECT_NAME" --force true --user-agent AlibabaCloud-Agent-Skills/alibabacloud-tech-solution-animation-creation-auto-deploy
# 3. Delete OSS Bucket (recursively delete all objects first, then delete the Bucket)
aliyun oss rm "oss://$BUCKET_NAME" -r -f --region cn-hangzhou --ua AlibabaCloud-Agent-Skills/alibabacloud-tech-solution-animation-creation-auto-deploy
aliyun oss rm "oss://$BUCKET_NAME" -b -f --region cn-hangzhou --ua AlibabaCloud-Agent-Skills/alibabacloud-tech-solution-animation-creation-auto-deploy
# 4. Delete Bailian API Key (API_KEY_ID is output during create-api-key.sh execution)
aliyun modelstudio delete-api-key --api-key-id "$API_KEY_ID" --user-agent AlibabaCloud-Agent-Skills/alibabacloud-tech-solution-animation-creation-auto-deploy
ワークフローの終了
ワークフローの完了後(またはクリーンアップ後)、AI-Mode を無効にします:
aliyun configure ai-mode disable
CLI/SDK では実行できない操作の概要
CLI コマンドの完全なリファレンスについては、references/related-commands.md を参照してください。
主な制限: FC の初回アクティベーションは CLI/API に対応していないため、ユーザーがコンソールで手動で有効化する必要があります。
自動有効化: OSS サービスは
aliyun ossadmin open-oss-service(ステップ 2 に組み込み済み)で、Bailian ワークスペースはaliyun modelstudio create-workspace(ステップ 1 に組み込み済み)で自動的に有効化されます。
ベストプラクティス
- リージョンは
cn-hangzhouに固定されています(FC と OSS は同じリージョンです) - DashScope API Key は Devs テンプレートのパラメーター経由で渡され、ハードコードされません
- OSS バケット名には、競合を避けるためランダムなサフィックスが含まれます
- デプロイ完了後、アクセス URL と作成されたリソースを記録します
参考リンク
| 参考資料 | 説明 |
|---|---|
| references/ram-policies.md | RAM 権限ポリシー |
| references/related-commands.md | CLI/SDK コマンドリファレンス |
| references/verification-method.md | デプロイの検証手順 |
| references/acceptance-criteria.md | 受け入れ条件 |
| references/cli-installation-guide.md | CLI インストールガイド |