0

Elastic Beanstalk で実行されているノード js アプリケーション内に作成した別のフレームワークをインストールする必要があります。

メインの package.json ファイル内にスクリプトを入れようとしましたが、インストール時に権限エラーが発生します。

そこで設定ファイルを作成し、container_commands から npm install を実行してみました。コマンドが欠落しているとのことで、npm を実行したくありませんでした。正しい環境パス変数を npm に追加しようとしましたが、これは ssh を介して手動で行うと機能しますが、npm コマンドが見つからないという同じエラーが発生しました。

それでは最後に。

アプリケーションをインストールする ebextension を介して bash スクリプトを作成し、そのスクリプトを container_commands から実行しました。

スクリプトは正しく作成されますが、実行されません。インスタンスに ssh し、sudo として手動で実行すると動作します。アプリはエラーなしでデプロイされますが、スクリプトを実行していないようです。これは、node_modules フォルダーが作成されないためです。

ログでこれに関するエラーを探す場所がわかりません。試してみたところ、役立つものは何も見つかりませんでした。

これが私のebextensionです:

files:
    "/tmp/install_application.sh":
        mode: "000755"
        owner: root
        group: root
        content: |
            #!/bin/bash
            export PATH=$PATH:`ls -td /opt/elasticbeanstalk/node-install/node-* | head -1`/bin
            eval "cd /var/app/current/library/server && npm install --production"
            eval "cd /var/app/current && npm install --production"

container_commands:
    00-install-application:
    command: "sh /tmp/install_application.sh"
4

1 に答える 1