2017-11-19 7 views
0

ドッキング・コンテナの内部から自分のマシンのローカル・レディ・サーバーに接続しようとしています。私はこれまで何をしたか:ドッキング・コンテナからローカル・レディ・サーバーに接続する方法

  • のRedisは(キャンはRedisの-CLI経由して接続)私のマシン上で実行してアップしている
  • は(Ubuntuのイメージから)
  • インストール「のRedisをインタラクティブドッカコンテナを開始しましたRedisの-CLI -h 172.17.0.3 -p 6379 "(容器内部のifconfigコマンドを経由してIPアドレスを持って)
  • が言ってエラーを得た:「
  • はRedisの-CLI経由でのRedisに接続しようとしたコンテナ内" -tool 「接続が拒否されました」

実際の接続を確立するために私が考えていないトリックは何ですか? redis.confに "bind 0.0.0.0"を設定しようとしましたが、それは効果がありませんでした。コンテナの実行時に6379を6379に転送しようとしましたが、アドレスがすでに使用中であるとエラーが表示されます。

ありがとうございます!

答えて

1

コンテナのipに接続するのではなく、ホストのip(ドッカーブリッジ用にホストに表示されるもの)に接続してください。あなたの質問を見ると、172.17.0.1

+0

上で動作しているホスト名redis_server経由Redisのサーバーに到達することができるようになりますありがとうございました! – kidman01

0

リンクをコンテナ間に使用する必要があります。
docker run -d --name=redis_xyz redis

docker run -it --link redis_xyz:redis_local redis_cli_image redis-cli -h redis_local

+0

コメントをいただきありがとうございますが、私はコンテナの中でredisを実行するつもりはありませんでした! – kidman01

+0

申し訳ありません。 したがって、redis-cliコンテナ内で試してください: redis-cli -h 0.0.0.0 または redis-cli -h HostIP 172.17.0.3はコンテナIPです。 -h HostIPまたは-h 0.0.0.0を使用します。 –

0

あなたがこれを行うことができます:

  • ホストマシンのIPを取得し、例えば以下のようなENV変数$ HOST_IP
  • ファイル名を指定して実行]ドッキングウィンドウのコマンドで:コンテナ内部から
docker run -it --add-host redis_server:$host_ip ubuntu bash

あなたのホストマシン

関連する問題