When running webdriver.io in a Jessie Docker container, the sandboxing
fails:
Failed to move to new namespace: PID namespaces supported, Network
namespace supported, but failed: errno = Operation not permitted
Detect whether we are in a Docker container by checking /.dockerenv and
if present append --no-sandbox to Chrome options.
Change-Id: Ie5c276d12553e4473c01b3407e0f7622e0a678e0
'use strict';
const password = 'vagrant',
+ fs = require( 'fs' ),
path = require( 'path' ),
username = 'Admin';
chromeOptions: {
// Run headless when there is no DISPLAY
// --headless: since Chrome 59 https://chromium.googlesource.com/chromium/src/+/59.0.3030.0/headless/README.md
- args: process.env.DISPLAY ? [] : [ '--headless' ]
+ args: (
+ process.env.DISPLAY ? [] : [ '--headless' ]
+ ).concat(
+ // Disable Chrome sandbox when running in Docker
+ fs.existsSync( '/.dockerenv' ) ? [ '--no-sandbox' ] : []
+ )
}
} ],
//