Amazon EC2 インスタンスにログインするときに Elastic Beanstalk 環境で環境プロパティを表示させるにはどうすればよいですか?

最終更新日: 2019 年 6 月 4 日

AWS Elastic Beanstalk 環境のために環境プロパティを設定したのですが、Elastic Beanstalk 環境で Amazon Elastic Compute Cloud (Amazon EC2) インスタンスにログインしてから、シェルで環境変数をリストするコマンドを実行しても、これらのプロパティが表示されません。

簡単な説明

PHP を実行するスタック以外では、環境プロパティがインスタンスに存在していたとしても、それらがシェルに自動的にエクスポートされることはありません。その代わりに、環境プロパティは、使用されているプラットフォームに基づいて、アプリケーションが実行されているスタックを通じてアプリケーションに提供されます。環境プロパティを表示して設定するには、Elastic Beanstalk コンソールを使用する、または Elastic Beanstalk コマンドラインインターフェイス (EB CLI) で eb setenv コマンドを実行することができます。

解決方法セクションでは、いくつかのプラットフォームで環境プロパティのソースを設定する方法を説明します。これ以外のプラットフォーム固有のオプションに関する情報については、「環境プロパティとその他のソフトウェアの設定」を参照してください。コード外で環境プロパティにアクセスする方法の情報については、「プラットフォームスクリプト」と get-config examples を参照してください。

解決方法

Python

環境プロパティは /opt/python/current/env ファイルに書き込まれ、これがアプリケーションが実行される virtualenv スタックのソースになります。詳細については、「AWS Elastic Beanstalk Python プラットフォームを使用する」を参照してください。

ソースを設定するには、インスタンスにログインしてから、以下のコマンドを実行します。

~$ source /opt/python/current/env

Ruby

環境プロパティはまず、スタック設定情報のすべてが含まれている JSON ファイル (/opt/elasticbeanstalk/deploy/configuration/containerconfiguration) に書き込まれます。/opt/elasticbeanstalk/hooks/configdeploy/pre/10_setup_envvars.sh のプリデプロイメントフックがトリガーされると、opt/elasticbeanstalk/support/envvars ファイルにすべての環境プロパティが投入されます。Opt/elasticbeanstalk/support/envvars ファイルは次に、環境変数をアプリケーションが使用できるように、スタックによって読み込まれます。詳細については、「AWS Elastic Beanstalk Ruby プラットフォームを使用する」を参照してください。

ソースを設定するには、インスタンスにログインしてから、以下のコマンドを実行します。

source /opt/elasticbeanstalk/support/envvars

Java

起動時に設定した環境プロパティは、シェル環境変数にはなりません。詳細については、「Java SE 環境を設定する」を参照してください。

Windows

環境プロパティは、C:\Program Files\Amazon\ElasticBeanstalk\config\containerconfiguration から Microsoft Internet Information Services (IIS) サーバーに渡されます。


この記事はお役に立ちましたか?

改善できることはありますか?


さらにサポートが必要な場合