Coder Social home page Coder Social logo

stevenlangbroek / cypress-docker-images Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cypress-io/cypress-docker-images

0.0 1.0 0.0 547 KB

Docker images with Cypress dependencies and browsers

Home Page: https://on.cypress.io/continuous-integration

License: MIT License

Shell 9.20% JavaScript 12.60% HTML 0.06% Dockerfile 78.14%

cypress-docker-images's Introduction

Cypress Docker Images CircleCI

These images provide all of the required dependencies for running Cypress in Docker.

We build three main images, click on the image name to see the available tags and versions.

Image Default Description
cypress/base cypress/base:8 All system dependencies, no browsers.
cypress/browsers cypress/browsers:chrome67 All system dependencies and browser(s).
cypress/included cypress/included:3.2.0 All system dependencies and the Cypress test runner installed globally.

Of these images, we provide multiple tags for various operating systems and specific browser versions. These allow you to target specific combinations you need.

Best practice

It is recommended to use a specific image tag, and not rely on the default tag. For example, it is better to use cypress/base:8 than cypress/base. Even better it is to use full version of the image, like cypress/base:8.15.1 - we will never overwrite the existing Docker images to prevent accidental changes.

DockerHub

All of the images and tags are published to DockerHub under

Examples

These images have all dependencies necessary to install and run Cypress. Just install your NPM dependencies (including Cypress) and run the tests. We utilize many of these docker images in our own projects, with different CI providers.

Check out our docs for examples.

If you want to use cypress/included image, read Run Cypress with a single Docker command

Folder examples/included-as-non-root shows how to build a new Docker image on top of cypress/included image and run the tests as non-root user node.

Folder examples/included-as-non-root-alternative shows another approach to allow built-in non-root user node to run tests using cypress/included image.

Folder examples/included-as-non-root-mapped shows how to build a Docker image on top of cypress/included that runs with a non-root user that matches the id of the user on the host machine. This way, the permissions on any files created during the test run match the user's permissions on the host machine.

Folder examples/included-with-plugins shows how to use locally installed Cypress plugins while running cypress/included image.

Common problems

Cannot run post-install hook

Some versions of Node restrict running postinstall hook with the following error message

lifecycle [email protected]~postinstall: cannot run in wd [email protected]

In that case run install with npm install --unsafe-perm flag, or set an environment variable in the container

npm_config_unsafe_perm: true

Contributing

See CONTRIBUTING.md

License

See LICENSE

cypress-docker-images's People

Contributors

amuttsch avatar bahmutov avatar basickarl avatar brian-mann avatar chrisbreiding avatar clarmso avatar fadomire avatar flotwig avatar juancarlosfarah avatar kuceb avatar laruiss avatar loicplaire avatar maiis avatar matthieudolci avatar mtlynch avatar ob1dev avatar papermana avatar randallkent avatar rybon avatar stevengbrown avatar stevenlangbroek avatar tdamsma avatar thomasleduc avatar travnels avatar wtanna avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.