100%를 한번에 바꾸는건 어려워도 1%를 100번 바꾸는건 쉽다.

생각정리 자세히보기

개발/Node.js (NestJS)

[Node.js] puppeteer libatk-bridge-2.0.so.0 이슈 해결

dc-choi 2023. 3. 2. 22:04
반응형

최근 회사에서 puppeteer를 사용하여 크롤링을 해야하는 일이 있었다. 그렇게 로컬에서 잘 테스트를 마치고 배포를 하였는데, 갑자기 서버가 죽어버렸다. 에러코드는 다음과 같았다.

error while loading shared libraries: libatk-bridge-2.0.so.0: cannot open shared object file: No such file or directory

열심히 해당 내용을 구글링했고, 다음의 게시글을 발견하였다.

https://github.com/puppeteer/puppeteer/issues/1598

 

Error while loading libatk-bridge-2.0.so.0 · Issue #1598 · puppeteer/puppeteer

When running Puppeteer with Karma, I'm getting the following error on a CI. I don't have any issue locally on my Mac OS machine. /../node_modules/puppeteer/.local-chromium/linux-515411/chro...

github.com

이 오류가 발생한 이유를 정리하자면, 현재 회사에서는 서버를 Amazon Linux 2를 사용하고 있고, libatk-bridge-2.0.so.0라는 패키지가 없기 때문에 발생했다고 한다.

 

리눅스 패키지가 궁금하다면 다음 블로그를 봐주세요. 너무 정리가 잘되어있는 블로그입니다.

https://bradbury.tistory.com/227

 

리눅스 패키지(Linux Package)에 대한 이해

서론 여러분이 해보고 싶은 게임이 생겼다. 어떻게 할 것인가?? 당연히 해당 게임을 설치할 수 있는 홈페이지에 가서 파일을 다운로드를 하고 실행할 것이다. 그럼 이때 다운로드한 파일은 어떠

bradbury.tistory.com

puppeteer 실행에 필요한 패키지가 무엇인지 찾아보기 위해서 다음 사이트를 참고하여 필요한 패키지를 전부 설치했다.

https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md#chrome-headless-doesnt-launch-on-unix

 

GitHub - puppeteer/puppeteer: Headless Chrome Node.js API

Headless Chrome Node.js API. Contribute to puppeteer/puppeteer development by creating an account on GitHub.

github.com

위 게시글의 의존성을 전부 설치하니 정상적으로 동작하는 것을 확인할 수 있었다.

반응형