{"id":21811046,"url":"https://github.com/avatsaev/angular-chrome-headless-docker","last_synced_at":"2025-07-14T21:33:40.599Z","repository":{"id":71464524,"uuid":"123437670","full_name":"avatsaev/angular-chrome-headless-docker","owner":"avatsaev","description":"Docker image with embedded Node 8 and Chrome Headless preconfigured for Angular unit/e2e tests in CI/CD environments","archived":false,"fork":false,"pushed_at":"2018-09-12T09:12:26.000Z","size":8,"stargazers_count":29,"open_issues_count":3,"forks_count":19,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-13T22:12:11.013Z","etag":null,"topics":["angular","ci","docker","gitlab","karma","protractor"],"latest_commit_sha":null,"homepage":"","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/avatsaev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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-03-01T13:20:47.000Z","updated_at":"2022-01-19T05:21:59.000Z","dependencies_parsed_at":null,"dependency_job_id":"d9b07f18-65c3-491a-99cd-1c95abacc779","html_url":"https://github.com/avatsaev/angular-chrome-headless-docker","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/avatsaev/angular-chrome-headless-docker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avatsaev%2Fangular-chrome-headless-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avatsaev%2Fangular-chrome-headless-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avatsaev%2Fangular-chrome-headless-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avatsaev%2Fangular-chrome-headless-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/avatsaev","download_url":"https://codeload.github.com/avatsaev/angular-chrome-headless-docker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avatsaev%2Fangular-chrome-headless-docker/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265352257,"owners_count":23751886,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["angular","ci","docker","gitlab","karma","protractor"],"created_at":"2024-11-27T13:39:54.837Z","updated_at":"2025-07-14T21:33:40.559Z","avatar_url":"https://github.com/avatsaev.png","language":"Dockerfile","readme":"# Angular Chrome Headless Docker\nDocker image with embedded Node 9 and Chrome Headless preconfigured for Angular unit/e2e tests on your CI/CD servers\n\n\n### Get the image: \n\n`docker pull avatsaev/angular-chrome-headless`\n\n#### Launch scripts:\n\n- unit tests:  `ng test --watch=false --browsers=ChromeHeadless`\n\n- e2e tests:  `ng e2e`\n\n\n### Karma Config:\n\n```javascript\n\n// Karma configuration file, see link for more information\n// https://karma-runner.github.io/0.13/config/configuration-file.html\n\nmodule.exports = function (config) {\n  config.set({\n    basePath: '',\n    frameworks: ['jasmine', '@angular/cli'],\n    browserNoActivityTimeout: 50000,\n    browserDisconnectTolerance: 2,\n    plugins: [\n      require('karma-jasmine'),\n      require('karma-chrome-launcher'),\n      require('karma-jasmine-html-reporter'),\n      require('karma-coverage-istanbul-reporter'),\n      require('@angular/cli/plugins/karma')\n    ],\n    client:{\n      clearContext: false // leave Jasmine Spec Runner output visible in browser\n    },\n    coverageIstanbulReporter: {\n      reports: [ 'html', 'lcovonly' ],\n      fixWebpackSourcePaths: true\n    },\n    angularCli: {\n      environment: 'dev'\n    },\n    reporters: config.angularCli \u0026\u0026 config.angularCli.codeCoverage\n      ? ['progress', 'coverage-istanbul']\n      : ['progress', 'kjhtml'],\n    port: 9876,\n    colors: true,\n    logLevel: config.LOG_INFO,\n    autoWatch: true,\n    browsers: ['ChromeHeadless', 'Chrome'],\n    customLaunchers: {\n      ChromeHeadless: {\n        base: 'Chrome',\n        flags: [\n          '--headless',\n          '--disable-gpu',\n          '--no-sandbox',\n          '--remote-debugging-port=9222'\n        ]\n      }\n    },\n    singleRun: false\n  });\n};\n\n```\n\n#### Protractor Config:\n\n```javascript\n\n// Protractor configuration file, see link for more information\n// https://github.com/angular/protractor/blob/master/lib/config.ts\n\nconst { SpecReporter } = require('jasmine-spec-reporter');\n\nexports.config = {\n  allScriptsTimeout: 11000,\n  specs: [\n    './e2e/**/*.e2e-spec.ts'\n  ],\n  capabilities: {\n    'browserName': 'chrome',\n    'chromeOptions': {\n      'args': ['--no-sandbox', '--headless', '--window-size=1024,768']\n    }\n  },\n  directConnect: true,\n  baseUrl: 'http://localhost:4200/',\n  framework: 'jasmine',\n  jasmineNodeOpts: {\n    showColors: true,\n    defaultTimeoutInterval: 30000,\n    print: function() {}\n  },\n  onPrepare() {\n    require('ts-node').register({\n      project: 'e2e/tsconfig.e2e.json'\n    });\n    jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));\n  }\n};\n```\n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favatsaev%2Fangular-chrome-headless-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Favatsaev%2Fangular-chrome-headless-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favatsaev%2Fangular-chrome-headless-docker/lists"}