centos 설치 node와puppeteer

1. centos 설치 node
(1).wget 다운로드 원본 코드
wget https://nodejs.org/dist/v10.15.3/node-v10.15.3-linux-x64.tar.xz

https://nodejs.org/dist 이 디렉터리에서 각 버전의 원본 코드를 찾을 수 있습니다
(2).압축 풀기
xz -d node-v10.15.3.tar.xz
tar -xvf node-v10.15.3.tar

(3).플로피 연결을 설정하려면 node가 전역적으로 사용할 수 있도록 플로피 연결을 추가해야 합니다. 설정이 끝나면 사용할 수 있습니다
ln -s /usr/local/node-v10.15.3/bin/node /usr/local/bin/node  
ln -s /usr/local/node-v10.15.3/npm /usr/local/bin/npm

(4).테스트 node -v
v10.15.3

npm -v
6.8.0

node 설치 완료, 대응하는 npm도 다운로드 설치 완료
ps: 참조: https://github.com/nodejs/hel...
2. puppeteer 설치 문제
(1) puppeteer를 사용하여 자동화하려면 Chrome 브라우저를 설치해야 한다
       ,    puppeteer      chromium,        git   ,          
(     docker   chromium,        ,      https://docs.browserless.io/docs/docker-quickstart.html)

(2)puppeteer 설치 및 extra 설치 문제
Q1:(node:19180) UnhandledPromiseRejectionWarning: Error: Failed to launch chrome!/data/www/vhosts/aps_task/httpdocs/node_modules/puppeteer/.local-chromium/linux-686378/chrome-linux/chrome: error while loading shared libraries: libXcomposite.so.1: cannot open shared object file: No such file or directory
TROUBLESHOOTING: https://github.com/GoogleChro...A: 브라우저를 설치한 후 의존적인 확장을 설치해야 하기 때문에 구체적으로 보면 https://github.com/GoogleChro... 주의, 설치가 끝난 후에 실행:
yum update nss -y

일부 패키지가 잘못 보고되면 다음을 수행할 수 있습니다.
yum update glib2 -y

Q:2(node:20844) UnhandledPromiseRejectionWarning: Error: Failed to launch chrome!/data/www/vhosts/aps_task/httpdocs/node_modules/puppeteer/.local-chromium/linux-686378/chrome-linux/chrome: symbol lookup error:/lib64/libpangoft2-1.0.so.0: undefined symbol: FcWeightFromOpenTypeDouble
/lib64/libpangoft2-1.0.so.0 이 파일은 존재하지만 오류가 발생하는 원인은 다음과 같다. 현재 설치된 버전은 1.42버전이고 버전이 너무 높으며 해결 방식은 낮은 버전을 설치하면 된다. 정부에서도 버그 보고서를 냈는데 이 문제가 존재한다.이것 참조: https://bugs.archlinux.org/ta...
해결 방법: 1.yum로 설치한 후 판고를 마운트 해제합니다.yum remove를 사용하지 않도록 주의하십시오. 의존하는 가방도 마운트 해제할 수 있기 때문입니다.사용
rpm -e --nodeps package_name
rpm -e --nodeps pango.x86_64

2.주의:gtk3은 패키지 설치,pango 패키지 업데이트,모든 작업은 패키지 설치 후 필요합니다.
3. 1.40 버전을 수동으로 다운로드한 다음yum 로컬 설치 다운로드 주소를 사용합니다. https://buildlogs.centos.org/... 구체적인 주소: https://buildlogs.centos.org/...
yum localinstall package_name
yum localinstall pango-1.40.x86_64.rpm

Q.3 Sandbox 문제, (node:32577) Unhandled Promise Rejection Warning: Error: Failed to launch chrome!
(chrome:32588): Gtk-WARNING **: 01:34:12.473: cannot open display:
args 매개 변수에 ['--no-sandbox', '--disable-setuid-sandbox']를 더하여 모래상자로 설정
await puppeteer.launch({
        headless: true,
        //Setting Up Chrome Linux Sandbox,      
        args: ['--no-sandbox', '--disable-setuid-sandbox'] 
})

좋은 웹페이지 즐겨찾기