예전에는 로컬에서 헤드리스 브라우저를 띄우고 거기에 CDP(Chrome DevTools Protocol)로 연결해서 받아오는 방식이었음
* chromedriver나 firefox webdriver 등
* 이걸 추상화한 게 selenium
조금 더 발전한 이후에는 CDP로 크롬브라우저를 제어하는 드라이버가 나타났고, 이 드라이버에 websocket으로 연결해서 원격 제어가 가능해짐
websocket이 외부로도 확장되어 제공되었다고 볼 수 있음
원격 제어가 가능해지니까 docker container 이미지로 만듬
그런데 헤드리스 브라우저를 기동해보면 container를 privileged mode로 설정하고 보안을 침해하는 어드민 권한을 확보해야 해서 좀 귀찮은 점이 있는데 이걸 container로 만들기 위한 노력들이 결실을 맺음
https://github.com/browserless/browserless
기술이 성숙해지니까 이제는 k8s 위에 올리기 시작했고 현재는 helm chart로 나와 있음
컨테이너의 등장 이후로는 패키징이나 포팅 수준의 기술 발전만 나오고 있음
https://artifacthub.io/packages/search?ts_query_web=browserless&sort=relevance&page=1