スキップしてコンテンツを表示

Cloud Formationでデプロイ中、AppRunnerのbackendスタック生成がうまくいかない。

0

お世話になります。 bakendはStarpiを使用しています。 インフラのフォルダはこちらです。 https://12.gigafile.nu/0215-b84e8635cf0d38ee77ff10a1775b8e82b 以下のAWSのスタックは生成が成功しています。 ・app-s3
 ・db
 ・Iam-dev
 ・app-secrets

Apprunnerのログは以下です。
ビルドコマンドで失敗しているのですがここを試行錯誤しても解決せずです。 アドバイスいただければ幸いです。 CDKに切り替えた方が上手くいく可能性はありますでしょうか?その点も含めて教えていただければありがたいです。

Enabling VPC connection for outgoing traffic. 02-09-2025 07:27:12 PM [AppRunner] Successfully enabled VPC connection for outgoing traffic. 02-09-2025 07:33:11 PM [AppRunner] Creating pipeline for automatic deployments. 02-09-2025 07:33:11 PM [AppRunner] Successfully created pipeline for automatic deployments. 02-09-2025 07:33:13 PM [AppRunner] Pulling source code from GITHUB Repository ( https://github.com/yunixy-inc/strapi-food-delivery-prac ). 02-09-2025 07:33:17 PM [AppRunner] Successfully pulled your application source code. 02-09-2025 07:33:18 PM [AppRunner] Successfully validate configuration file. 02-09-2025 07:33:19 PM [AppRunner] Starting source code build. 02-09-2025 07:34:52 PM [AppRunner] Failed to build your application source code. Reason: Failed to execute 'build' command. 02-09-2025 07:35:45 PM [AppRunner] Deployment with ID : 143baaba6940435f8319924608d9a735 failed.

質問済み 9ヶ月前101ビュー
2回答
2
承認された回答

AppRunnerのCloudFormationテンプレートを確認しました。
ビルドコマンドが以下のようになっていましたが、pnpmはインストールされているのでしょうか?
「npm install」などを実行しないとインストールできていないのではないかと予想しています。

BuildCommand: npx pnpm install && NODE_ENV=production npx pnpm build && mkdir -p dist && cp -r build/* dist/ && cp -r config dist/ && cp -r public dist/ && cp package.json dist/ && cp pnpm-lock.yaml dist/
エキスパート
回答済み 9ヶ月前
エキスパート
レビュー済み 9ヶ月前
  • いつもありがとうございます! アドバイスしていただき修正したのですが Failed to execute 'build' commandでまた失敗してしまいました。 どこがいけないのかまだ特定できず。可能でしたらまたアドバイスいただけると幸いです。 修正後のコードは以下です。 https://44.gigafile.nu/0217-c40a724255ed567bf361cec27b325b177

  • ローカル環境でDockerコンテナを使用して同じコマンドでビルドした時に動きますでしょうか? また、npm installを引数なしで実行していますがpackage.jsonと同じディレクトリで実行されていますでしょうか?

    BuildCommand: npm install && npm install -g pnpm && pnpm install && NODE_ENV=production pnpm build && mkdir -p dist && cp -r build/* dist/ && cp -r config dist/ && cp -r public dist/ && cp package.json dist/ && cp pnpm-lock.yaml dist/ && mv dist/* .
    
0

AppRunnerのデプロイ中にbackendスタックの生成が失敗している問題について、以下のアドバイスを提供します:

  1. ビルドコマンドの確認: ログによると、'build'コマンドの実行に失敗しています。Strapiプロジェクトのpackage.jsonファイルを確認し、正しいビルドスクリプトが定義されているか確認してください。通常、Strapiのビルドコマンドはnpm run buildまたはyarn buildです。

  2. 依存関係の確認: すべての必要な依存関係がプロジェクトに含まれているか確認してください。package.jsonファイルを確認し、必要なパッケージがすべてリストされているか確認してください。

  3. Node.jsバージョンの確認: AppRunnerの設定で指定されているNode.jsバージョンがプロジェクトの要件と一致しているか確認してください。

  4. 環境変数: Strapiが必要とする環境変数がすべて正しく設定されているか確認してください。データベース接続情報やその他の設定が正しいか確認してください。

  5. メモリとCPUの割り当て: AppRunnerインスタンスに十分なリソースが割り当てられているか確認してください。ビルドプロセスが失敗する原因として、リソース不足の可能性もあります。

  6. ログの詳細確認: AppRunnerのログをさらに詳しく確認し、具体的なエラーメッセージや失敗の原因を特定してください。

CDKへの切り替えについて: CDKを使用することで、より柔軟で細かい制御が可能になる場合があります。特に、複雑なインフラストラクチャやカスタムリソースの設定が必要な場合はCDKが有利かもしれません。ただし、現在の問題はCloudFormationよりもアプリケーションのビルドプロセスに関連している可能性が高いため、CDKへの切り替えだけでは直接的な解決にならない可能性があります。

まずは上記の点を確認し、アプリケーションのビルドプロセスを修正することをお勧めします。それでも問題が解決しない場合は、CDKへの移行を検討するのも一つの選択肢です。CDKを使用すると、より詳細なデプロイメントプロセスの制御や、トラブルシューティングのための追加のカスタマイズが可能になるかもしれません。
Sources
Community | Deploy a Container Web App on Amazon ECS Using Amazon CodeCatalyst

回答済み 9ヶ月前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

関連するコンテンツ