최근 회사에서 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 실행에 필요한 패키지가 무엇인지 찾아보기 위해서 다음 사이트를 참고하여 필요한 패키지를 전부 설치했다.
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
위 게시글의 의존성을 전부 설치하니 정상적으로 동작하는 것을 확인할 수 있었다.
'개발 > Node.js (NestJS)' 카테고리의 다른 글
[Node.js] 413 Payload Too Large 오류 해결 (0) | 2024.11.01 |
---|---|
[Node.js] Prisma 한방 쿼리로 성능 개선 (0) | 2024.07.25 |
[Node.js] Express에 HTTPS 적용하기 (0) | 2022.03.04 |
[Node.js] EC2에 Express APP 배포하기 (0) | 2022.03.02 |
[Node.js] Passport (로컬 로그인 with session) (0) | 2022.01.19 |