📗

ECSにデプロイするとNo application encryption key has been specified.と表示される

2023/11/27に公開

はじめに

Codepipelineを使用してGitHubにコードをプッシュすると、ECSにデプロイされるように自動化するように実装しました。その際デプロイには成功するのですが、デプロイ後にパブリックIPにアクセスするとNo application encryption key has been specified.とエラーが表示されてしまいました。

原因

このエラーはLaravelアプリケーションの暗号鍵(application key)が設定されていない場合に発生するもので、CodeBuildではGitHubのソースコードを使用しており、.envがないために発生するようです。

解決方法

buildspec.ymlに下記を記述してください。

buildspec.yml
  build:
      # .env ファイルがない場合は、.env.example をコピーして生成
      - if [ ! -f .env ]; then cp .env.example .env; fi

      # Laravelアプリケーションの鍵を生成
      - php artisan key:generate

終わりに

何かありましたらお気軽にコメント等いただけると助かります。
ここまでお読みいただきありがとうございます🎉

Discussion