【Selenium】docker-seleniumでユーザデータを永続化してみる!【Chrome】
今回は、docker-seleniumでユーザデータを永続化する方法 を紹介したいと思います。
目次
セットアップ
今回は、selenium/standalone-chrome-debug:3.141.59-20200525
イメージを使用して試して行きたいと思います。
selenium/standalone-chrome-debug:3.141.59-20200525
イメージの場合だと、ユーザデータは/home/seluser/.config/google-chrome
にあります。
Docker Composeを使う場合は、このディレクトリをvolumes
でマウントしておけば、データが永続化されます。
version: '3' services: chrome: image: selenium/standalone-chrome-debug:3.141.59-20200525 user: root volumes: - /dev/shm:/dev/shm - /.config/google-chrome:/home/seluser/.config/google-chrome ports: - "5900:5900"
デフォルトユーザだと、ファイルへのアクセス権限まわりでエラーがでるので、ユーザはrootに設定しています。
動作確認用にstandalone-chrome-debug
イメージを使用し、5900
ポートだけあけています。
実際に試してみる!
docker-compose.yml
を追加したディレクトリへ移動して、以下のコマンドを実行してください。
docker-compose up -d
VNCクライアントツールなどでlocalhost:5900
にアクセスする事ができます。
途中パスワードの入力が求められた場合は 初期パスワードであるsecret
を入力 してください。
(初期パスワードの変更方法については、次回記事で紹介予定です。)
他のchromeイメージでもたぶん同じ感じで使えると思います。
まとめ
以上、docker-seleniumでユーザデータを永続化する方法 を紹介してみました。
seleniumを使うとき、ブラウザのユーザデータを保持しておきたいという場面は結構あると思います。
そのような場合は、ぜひここで紹介した方法を試してみてください。
次回は、docker-seleniumでVNCパスワードを変更する方法 を紹介したいと思います。
※ 追記
「docker-seleniumでVNCパスワードを変更する方法」は以下のページを参照してください。