diff --git a/lib/run-chrome.js b/lib/run-chrome.js index 0c1b1d8..1709514 100644 --- a/lib/run-chrome.js +++ b/lib/run-chrome.js @@ -6,6 +6,7 @@ const path = require('path'); const http = require('http'); const {PassThrough} = require('stream'); const getPort = require('get-port'); +const isDocker = require('is-docker'); const CDP = require('chrome-remote-interface'); @@ -23,7 +24,10 @@ async function runChrome(entry, cb) { const errstream = PassThrough(); const chromeInstance = await chromeLauncher.launch({ - chromeFlags: ['--headless', '--disable-gpu'], + chromeFlags: ['--headless', '--disable-gpu'].concat( + // TODO: remove this flag when supported + isDocker() ? ['--no-sandbox'] : [] + ), }); const port = chromeInstance.port; diff --git a/package.json b/package.json index ae27f5e..c17daed 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "chrome-launcher": "^0.10.0", "chrome-remote-interface": "^0.25.5", "get-port": "^3.2.0", + "is-docker": "^1.1.0", "istanbul-lib-coverage": "^1.1.1", "merge2": "1.2.0", "minimist": "^1.2.0", diff --git a/yarn.lock b/yarn.lock index 08d641a..80cf5ac 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1705,6 +1705,10 @@ is-date-object@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" +is-docker@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-1.1.0.tgz#f04374d4eee5310e9a8e113bf1495411e46176a1" + is-dotfile@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1"