[Docker] Docker컨테이너에 selenium환경 구축하기

2024. 4. 16. 20:27Devops/Docker

https://hub.docker.com/r/selenium/standalone-chrome/tags

 

Docker

 

hub.docker.com

 

1. Docker hub에서 본인이 사용하는 버전의 크롬의 selenium/standalone-chrome 도커 미지를 pull 받는다.

필자는 123.0 버전을 받음

 

Window 환경에서 구축하였고 Windows PowerShell에 docker pull selenium/standalone-chrome:123.0 입력후 설치

(이미 설치 되어있음)

 

그 후 도커 이미지를 확인해보면 => docker images

 

이미지가 정상적으로 받아졌다. 이제 docker-selenium 공식 깃허브로 들어가보

https://github.com/SeleniumHQ/docker-selenium

 

GitHub - SeleniumHQ/docker-selenium: Provides a simple way to run Selenium Grid with Chrome, Firefox, and Edge using Docker, mak

Provides a simple way to run Selenium Grid with Chrome, Firefox, and Edge using Docker, making it easier to perform browser automation - SeleniumHQ/docker-selenium

github.com

 

여기보면 포트는 4444와 7900으로 설정하는데 4444는 웹드라이버의 포트이고 7900은 컨테이너 접속 포트이다.

해당 그림처럼 내부에서 컨테이너와 저 두 포트를 통해 통신이 가능하다.

나는 Chrome으로 셀레니움을 이용할 것이기 때문에 

docker run -d -p 4444:4444 -p 7900:7900 selenium/standalone-chrome:123.0 으로 자신의 환경에 맞게 run을 시켜준다

 

DockerDesktop

 

Cmd

 

셀레니움 환경을 가진 컨테이너가 생긴걸 확인할 수 있다.

localhost:7900으로 접속해보자 비밀번호는 secret

 

로그인을 하고

 

해당화면이 뜨면 컨테이너 연결 성공!

 

셀레니움 드라이버 설정 코드이다.

이제 컨테이너 환경에서 셀레니움으로 동적 크롤링이 가능해졌다.