{"id":19656774,"url":"https://github.com/daggerok/e2e","last_synced_at":"2026-02-11T01:02:29.427Z","repository":{"id":151041526,"uuid":"143463599","full_name":"daggerok/e2e","owner":"daggerok","description":"Docker base image for end-to-end selenium webdriver testing in docker: ubuntu, xvfb, java, firefox","archived":false,"fork":false,"pushed_at":"2020-03-08T04:09:14.000Z","size":126,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-08-03T13:38:03.481Z","etag":null,"topics":["chrome","docker","docker-image","dockerhub","dockerhub-image","e2e","e2e-testing","e2e-tests","firefox","jdk","jdk8","selenium","selenium-java","selenium-webdriver","ubuntu","ubuntu1404","webdriver","xvfb"],"latest_commit_sha":null,"homepage":"https://hub.docker.com/r/daggerok/e2e","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/daggerok.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-03T19:04:14.000Z","updated_at":"2020-05-18T22:25:51.000Z","dependencies_parsed_at":null,"dependency_job_id":"759189ec-384f-42ad-9bd3-78455b80131d","html_url":"https://github.com/daggerok/e2e","commit_stats":null,"previous_names":[],"tags_count":51,"template":false,"template_full_name":null,"purl":"pkg:github/daggerok/e2e","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daggerok%2Fe2e","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daggerok%2Fe2e/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daggerok%2Fe2e/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daggerok%2Fe2e/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/daggerok","download_url":"https://codeload.github.com/daggerok/e2e/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daggerok%2Fe2e/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29323964,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T00:34:26.354Z","status":"ssl_error","status_checked_at":"2026-02-11T00:34:09.494Z","response_time":65,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chrome","docker","docker-image","dockerhub","dockerhub-image","e2e","e2e-testing","e2e-tests","firefox","jdk","jdk8","selenium","selenium-java","selenium-webdriver","ubuntu","ubuntu1404","webdriver","xvfb"],"created_at":"2024-11-11T15:28:52.052Z","updated_at":"2026-02-11T01:02:29.356Z","avatar_url":"https://github.com/daggerok.png","language":"Dockerfile","readme":"# E2E image [![Build Status](https://travis-ci.org/daggerok/e2e.svg?branch=master)](https://travis-ci.org/daggerok/e2e) [![Firefox e2e tests](https://github.com/daggerok/e2e/workflows/Firefox%20e2e%20tests/badge.svg)](https://github.com/daggerok/e2e/actions) [![Chrome e2e tests](https://github.com/daggerok/e2e/workflows/Chrome%20e2e%20tests/badge.svg)](https://github.com/daggerok/e2e/actions?query=workflow%3A%22Chrome+e2e+tests%22)\nAutomated e2e base image build for Docker Hub\n\n- Docker Ubuntu `Bionic 18.04` / `Trusty 14.04`\n- Java Development Kit 8 `OpenJDK` / `AdoptOpenJDK`\n- Chrome with chrome driver version: `80.0.3987.106`\n- Firefox with gecko driver version: `0.26.0`\n- X Virtual Frame Buffer (xvfb)\n\n__v4__ _tags_\nww\n- [ubuntu-xvfb-jdk8](https://github.com/daggerok/e2e/tree/ubuntu-xvfb-jdk8-v4)\n- [bionic-xvfb-jdk8](https://github.com/daggerok/e2e/tree/bionic-xvfb-jdk8-v4)\n- [bionic-xvfb-jdk8-firefox](https://github.com/daggerok/e2e/tree/bionic-xvfb-jdk8-firefox-v4)\n- [bionic-xvfb-jdk8-chrome](https://github.com/daggerok/e2e/tree/bionic-xvfb-jdk8-chrome-v4)\n- [bionic-xvfb-jdk8-base](https://github.com/daggerok/e2e/tree/bionic-xvfb-jdk8-base-v4)\n- [trusty-xvfb-jdk8](https://github.com/daggerok/e2e/tree/trusty-xvfb-jdk8-v4)\n- [trusty-xvfb-jdk8-firefox](https://github.com/daggerok/e2e/tree/trusty-xvfb-jdk8-firefox-v4)\n- [trusty-xvfb-jdk8-chrome](https://github.com/daggerok/e2e/tree/trusty-xvfb-jdk8-chrome-v4)\n- [trusty-xvfb-jdk8-base](https://github.com/daggerok/e2e/tree/trusty-xvfb-jdk8-base-v4)\n\n_images_\n\n- **Docker Ubuntu Trusty 14.04 base image including XVFB and JDK8**\n- **Docker Ubuntu Trusty 14.04 image including Chrome browser, chrome driver, XVFB and JDK8**\n- **Docker Ubuntu Trusty 14.04 image including Firefox browser, gecko driver, XVFB and JDK8**\n- **Docker Ubuntu Trusty 14.04 image including Firefox and Chrome browsers, theirs web-drivers, XVFB and JDK8**\n\n\u003c!--\n\n__v3__ _tags_\n\n- [bionic-xvfb-jdk8](https://github.com/daggerok/e2e/tree/bionic-xvfb-jdk8-v3)\n- [bionic-xvfb-jdk8-chrome](https://github.com/daggerok/e2e/tree/bionic-xvfb-jdk8-chrome-v3)\n- [bionic-xvfb-jdk8-firefox](https://github.com/daggerok/e2e/tree/bionic-xvfb-jdk8-firefox-v3)\n- [bionic-xvfb-jdk8-base](https://github.com/daggerok/e2e/tree/bionic-xvfb-jdk8-base-v3)\n\n- [ubuntu-xvfb-jdk8](https://github.com/daggerok/e2e/tree/ubuntu-xvfb-jdk8-v3)\n- [ubuntu-xvfb-jdk8-chrome](https://github.com/daggerok/e2e/tree/ubuntu-xvfb-jdk8-chrome-v3)\n- [ubuntu-xvfb-jdk8-firefox](https://github.com/daggerok/e2e/tree/ubuntu-xvfb-jdk8-firefox-v3)\n- [ubuntu-xvfb-jdk8-base](https://github.com/daggerok/e2e/tree/ubuntu-xvfb-jdk8-base-v3)\n\n- [trusty-xvfb-jdk8](https://github.com/daggerok/e2e/tree/trusty-xvfb-jdk8-v3)\n- [trusty-xvfb-jdk8-chrome](https://github.com/daggerok/e2e/tree/trusty-xvfb-jdk8-chrome-v3)\n- [trusty-xvfb-jdk8-firefox](https://github.com/daggerok/e2e/tree/trusty-xvfb-jdk8-firefox-v3)\n- [trusty-xvfb-jdk8-base](https://github.com/daggerok/e2e/tree/trusty-xvfb-jdk8-base-v3)\n\n--\u003e\n\n_web drivers sources_\n\n* [Gecko firefox web driver](https://github.com/mozilla/geckodriver/releases)\n* [Google chrome web driver](http://chromedriver.chromium.org/)\n\n## Usage\n\n### just create your test Dockerfile\n\n```dockerfile\n\nFROM daggerok/e2e:ubuntu-xvfb-jdk8\n#/home/e2e/project-directory/\nWORKDIR 'project-directory/'\nENTRYPOINT start-xvfb \u0026\u0026 ./gradlew test\nCOPY . .\n\n```\n\n```dockerfile\n\nFROM daggerok/e2e:bionic-xvfb-jdk8-v4\nWORKDIR 'some-directory/'\nENTRYPOINT start-xvfb \u0026\u0026 ./gradlew test chrome\nCOPY . .\n\n```\n\n```dockerfile\n\nFROM daggerok/e2e:trusty-xvfb-jdk8\nWORKDIR 'e2e-tests/'\nENTRYPOINT start-xvfb \u0026\u0026 ./gradlew test firefox\nCOPY . .\n\n```\n\n```dockerfile\n\nFROM daggerok/e2e:trusty-xvfb-jdk8-base-v4\n#FROM daggerok/e2e:bionic-xvfb-jdk8-base-v4\nRUN echo 'install browser, webdriver and use already installed and configured jdk8 + Xvfb based on Ubuntu 14.04'\n\n```\n\n### build test image\n\n```bash\n# prepare tests/Dockerfile.firefox and build e2e test image  as usual...\ndocker build -f ./tests/Dockerfile.firefox -t daggerok/e2e-tests:`date +%Y-%m-%d` ./tests\n\n```\n\n### run tests\n\n```bash\n\ndocker run --rm --name run-`date +%Y-%m-%d`-e2e-tests daggerok/e2e-tests:`date +%Y-%m-%d`\n\n```\n\n### reduce build time by using data volume\n\n```bash\n\n# build e2e test image  as usual...\ndocker build -f ./tests/Dockerfile.firefox -t daggerok/e2e-tests:`date +%Y-%m-%d` ./tests\n\n# create re-usable e2e data volume\ndocker volume create e2e-data || echo 'oops, volume exists...'\n\n# run e2e tests\ndocker run --rm --name run-`date +%Y-%m-%d`-e2e-tests \\\n  -v e2e-data:/home/e2e/.gradle/caches/modules-2/files-2.1 \\\n  -v e2e-data:/home/e2e/.m2/repository \\\n  daggerok/e2e-tests:`date +%Y-%m-%d`\n\n```\n\n### fix chrome\n\nTo make it possible run e2e tests in chrome, you have to in addition configure `--no-sandbox` ChromeOptions argument\nin your tests, like so:\n\n```java\n// ./mvnw test -Dselenide.browser=chrome -Dselenide.headless=true\nif (\"chrome\".equals(Configuration.browser)) \u0026\u0026 Configuration.headless) {\n  ChromeOptions chromeOptions = new ChromeOptions().addArguments(\"--no-sandbox\");\n  WebDriverRunner.setWebDriver(new ChromeDriver(chromeOptions));\n}\n```\n\n\u003c!--\n\n### reduce build time (wrong, don't do that) trigger build...\n\nIn real big projects resolving dependencies each time might take long time and sometimes it's not what we want...\nSo we can try reuse existing local `~/.gradle` and `~/.m2` folders to reduce build time. \nTo do so, just mount needed folder on during docker run:\n\n```bash\n\ndocker build -t my-e2e-tests:latest .\nmkdir -p ~/.gradle/caches/modules-2/files-2.1 ~/.m2/repository\ndocker run --rm --name run-my-e2e-tests \\\n  -v ~/.gradle/caches/modules-2/files-2.1:/home/e2e/.gradle/caches/modules-2/files-2.1 \\\n  -v ~/.m2/repository:/home/e2e/.m2/repository \\\n  my-e2e-tests\n\n```\n\n**WARNING**\n\nSometimes it might cause some strange and not obvious problems for `file not found` or `permission denied` topics...\nSo use it only if you know what you are doing and if you ready to spend time for some debugging :)\n\n--\u003e\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaggerok%2Fe2e","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdaggerok%2Fe2e","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaggerok%2Fe2e/lists"}