PuppeteerをCentOSで動かす(sandbox)
概要
PuppeteerをCentOSで動かすための備忘録です。
Vagrantを使って構築します。
環境
MacOS Mojave
Vagrant 2.2.3
CentOS 7
コマンド
- Chrome用の依存をインストール
$ yum -y install pango libXcomposite libXcursor libXdamage libXext libXi libXtst cups-libs libXScrnSaver libXrandr GConf2 alsa-lib atk gtk3 ipa-gothic-fonts xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi xorg-x11-utils xorg-x11-fonts-cyrillic xorg-x11-fonts-Type1 xorg-x11-fonts-misc
- nssをアップデートする
$ yum -y update nss
- Node.js, YarnとPuppeteerのインストール
$ yum -y install https://rpm.nodesource.com/pub_12.x/el/7/x86_64/nodesource-release-el7-1.noarch.rpm
$ yum -y install nodejs
$ curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | tee /etc/yum.repos.d/yarn.repo
$ rpm --import https://dl.yarnpkg.com/rpm/pubkey.gpg
$ yum install -y yarn
$ cd your project
$ yarn add puppeteer // or install it from package.json
No usable sandbox!対応
$ cd node_modules/puppeteer/.local-chromium/linux-686378/chrome-linux/
$ chown root:root chrome_sandbox
$ chmod 4755 chrome_sandbox
$ cp -p chrome_sandbox /usr/local/sbin/chrome-devel-sandbox
$ chown root:root /usr/local/sbin/chrome-devel-sandbox
$ chmod 4755 /usr/local/sbin/chrome-devel-sandbox
$ echo 'export CHROME_DEVEL_SANDBOX=/usr/local/sbin/chrome-devel-sandbox' >> /home/vagrant/.bashrc
$ cd node_modules/puppeteer/.local-chromium/linux-686378/chrome-linux/
$ chown root:root chrome_sandbox
$ chmod 4755 chrome_sandbox
$ cp -p chrome_sandbox /usr/local/sbin/chrome-devel-sandbox
$ chown root:root /usr/local/sbin/chrome-devel-sandbox
$ chmod 4755 /usr/local/sbin/chrome-devel-sandbox
$ echo 'export CHROME_DEVEL_SANDBOX=/usr/local/sbin/chrome-devel-sandbox' >> /home/vagrant/.bashrc
これで--no-sandboxが要らないはず。
参考
Author And Source
この問題について(PuppeteerをCentOSで動かす(sandbox)), 我々は、より多くの情報をここで見つけました https://qiita.com/nannou/items/07a6fd970c8a95da9c89著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .