LoginSignup
3
0

More than 5 years have passed since last update.

http_proxyの設定があるとlocalstackの起動でエラーになる

Last updated at Posted at 2017-08-18

localstack を起動するときに、環境変数 http_proxy (または HTTP_PROXY) が設定されている環境では、以下のように elasticsearch の起動チェックで、何度か WARNING:infra.py:Service "elasticsearch" not yet available, retrying... の警告が出た後、エラーで終了することがある。

WARNING:infra.py:Service "elasticsearch" not yet available, retrying...
ERROR:localstack.services.es.es_starter:Elasticsearch health check failed (retrying...): (以降略)

また、Docker on Mac でもデフォルトがsytsem proxyを参照するようになっているため、OSのネットワーク設定でプロキシが有効になっている場合でも、同様の問題が発生する。

WARNING:infra.pyc:Service "kinesis" not yet available, retrying...
ERROR:infra.pyc:Error checking state of local environment (after some retries): Traceback (most recent call last):
File "/opt/code/localstack/localstack/services/infra.py", line 285, in check_infra
raise e
TypeError: 'NoneType' object has no attribute '__getitem__'
Traceback (most recent call last):
File "bin/localstack", line 79, in <module>
infra.start_infra()
File "/opt/code/localstack/localstack/services/infra.py", line 359, in start_infra
raise e
TypeError: 'NoneType' object has no attribute '__getitem__'

これは、起動チェックでモックサーバに接続しに行くところがプロキシサーバ経由となり、モックサーバに接続できないことが原因である。
このような場合、プロキシサーバを使用しないように環境変数の設定を解除すればエラーは解消するはずである。あるいは、環境変数 no_proxy
no_proxy=<コンテナのhostname>,localhost,127.0.0.1,[::1]
のようにセットすれば、ヘルスチェックがプロキシをバイパスするようになる。

この問題は、#239で解決済みであり、リポジトリから最新版を落としてくるか、PR#244のパッチを適用することで解消する。

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0