SeleniumサーバをDockerで構築する
SeleniumサーバをDockerコンテナとして構築する。
すでにGitHubにdocker-seleniumというプロジェクトが出ているが、
今回は日本語環境で利用したかったので、ゼロから作り直した。
使い方
$ git@github.com:kentatogashi/docker-selenium-ja.git $ cd docker-selenium-ja $ docker build -t 'kentatogashi/docker-selenium-ja' . $ docker run -dt -p 4444:4444 -p 5901:5901 kentatogashi/docker-selenium-ja
後記
デスクトップには、xfce4を使用していて、VNCでもつなぐことができる。
ちなみに、MacOSだと便利なことに、openコマンドで、簡単に立ち上げられる。
$ open vnc://selenium@192.168.99.100:5901
entrypointでは、vncserverの起動とXサーバを経由してSeleniumを起動する。
ただ、vncserver起動時にパスワードを対話形式で聞かれてしまうので、少しハマった。
結果的に、vncpasswdで、パスワードを事前に作成しておいて、それをコンテナに置くようにした。
Dockerfileには、こんな記述を書いた
# VNC Password RUN mkdir /root/.vnc ADD .vnc/passwd /root/.vnc/passwd RUN chmod 600 /root/.vnc/passwd
コマンドラインの結果をデスクトップに出力するために、 DISPLAYをきちんと指定が必要なのは初めて知った。
$ DISPLAY=:1 firefox
こうしておくと、デスクトップで開ける。
追記(2016/03/19)
Docker Hubに、登録したので、docker pull できる。
https://hub.docker.com/r/kentatogashi/docker-selenium-ja/
参考
DockerのUbuntu14.10の日本語化環境イメージを作成(Ubuntu) | BROKENDISH
CentOS/Ubuntu Linuxで、Oracle JDK 8をインストールしたDockerイメージを作る - CLOVER