alpine headless:
debian headless:
xvfb:
This image allows to run javascript tests in a headless machine like a CI server.
This image support karma and protractor test under chromium.
Unfortunately, chromium doesn't support container (travis-ci/travis-ci#938), you need to start chromium with --no-sandbox argument to avoid this.
docker run --rm -v $(pwd):/app -w /app -it weboaks/node-karma-protractor-chrome:alpine sh
job name:
image: weboaks/node-karma-protractor-chrome:alpine
To configure karma and protractor, use this snippets:
browsers: ['Chromium_no_sandbox'],
customLaunchers: {
Chromium_no_sandbox: {
base: 'ChromiumHeadless',
flags: ['--no-sandbox']
}
},
ChromiumHeadless is available since karma-chrome-launcher@2.2.0, on previous versions use:
base: 'Chromium',
flags: ['--no-sandbox', '--headless', '--disable-gpu', '--remote-debugging-port=9222']
capabilities: {
'browserName': 'chrome',
'chromeOptions': {
'args': ['no-sandbox', 'headless', 'disable-gpu']
}
},
Chromium recently added headless support. If you want to use headless mode use the version and follow instructions in this readme.
If you don't want to use the headless mode, use or and follow instructions in that readme
To use alpine instead of debian, follow headless instructions and add this to protractor config :
chromeDriver: '/usr/bin/chromedriver',
Others debian headless
node versions are avalaible via the debian-node6
debian-node8
debian-node9
tags.
Others alpine
headless node versions are avalaible via the alpine-node6
alpine-node8
alpine-node9
tags.
debian*
and alpine*
have no root access, if you need root access use debian-root
, alpine-root
, or xvfb
headless
, alpine
, debian-node*
and alpine-node*
are automated build, rebuild each time a commit is pushed to this repo and each time an image is pushed to official node
image. These tags are always up to date, but can break builds with a new node version or a new chromium versions.
debian-<commit-hash>
and alpine-<commit-hash>
tags are available to target a specific commit, they are never rebuilt and will have the same node and chromium version forever.