0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

docker上のselenium serverで自分のサイトにアクセスできなかった件

Posted at

TL;DR

DNSから送られてくるIPアドレスは外部ホストから参照する用のもの
同一コンピュータ上のコンテナどうしでアクセスする際は、コンテナネットワークで割り当てられたIPアドレスを使用する必要がある

現象

同一のコンピュータのdockerで起動しているseleniumサーバとWebサーバがある
seleniumサーバからWebサーバに、ドメインを利用してアクセスしようとすると接続に失敗する
例)下記のコマンドが失敗する

curl mywebsite.com

原因

DNSから返されるIPアドレスは、WANからアクセスするためのもの。
同一コンピュータのdockerは同じローカルネットワーク上に存在しているため、これらで通信するためにはLAN上で割り当てられたIPアドレスを使用する必要がある。

解決法

mywebsite.comをLAN用のIPアドレスで解決できるよう、/etc/hostsに追記を行う。

コンテナのIPアドレスを確認
docker inspect your_network_name
docker-compose.yml
~~前略
  your-container-name:
    extra_hosts:
      - "mywebsite.com:x.x.x.x" #←に繋げたいコンテナのLAN上のIPアドレスを記入
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?