{"id":40719765,"url":"https://github.com/shivjm/docker-node-chromium","last_synced_at":"2026-01-21T13:35:50.205Z","repository":{"id":46111095,"uuid":"221795031","full_name":"shivjm/docker-node-chromium","owner":"shivjm","description":"A Docker image with preinstalled Chromium and Node.JS on Alpine Linux.","archived":false,"fork":false,"pushed_at":"2024-08-20T15:04:39.000Z","size":32,"stargazers_count":15,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-08-20T17:16:43.084Z","etag":null,"topics":["alpine-linux","chromium","docker","nodejs","puppeteer"],"latest_commit_sha":null,"homepage":"","language":null,"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/shivjm.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":"2019-11-14T22:05:28.000Z","updated_at":"2024-08-20T15:04:42.000Z","dependencies_parsed_at":"2024-08-20T17:05:44.203Z","dependency_job_id":"f7277794-bde6-497b-8725-edbc907b8839","html_url":"https://github.com/shivjm/docker-node-chromium","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/shivjm/docker-node-chromium","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shivjm%2Fdocker-node-chromium","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shivjm%2Fdocker-node-chromium/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shivjm%2Fdocker-node-chromium/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shivjm%2Fdocker-node-chromium/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shivjm","download_url":"https://codeload.github.com/shivjm/docker-node-chromium/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shivjm%2Fdocker-node-chromium/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28633774,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-21T04:47:28.174Z","status":"ssl_error","status_checked_at":"2026-01-21T04:47:22.943Z","response_time":86,"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":["alpine-linux","chromium","docker","nodejs","puppeteer"],"created_at":"2026-01-21T13:35:50.142Z","updated_at":"2026-01-21T13:35:50.197Z","avatar_url":"https://github.com/shivjm.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# docker-node-chromium\n\n[![Build and publish to Docker Hub](https://github.com/shivjm/docker-node-chromium/actions/workflows/publish.yml/badge.svg)](https://github.com/shivjm/docker-node-chromium/actions/workflows/publish.yml) ![https://hub.docker.com/r/shivjm/node-chromium](https://img.shields.io/docker/pulls/shivjm/node-chromium)\n\nA Docker image with preinstalled Chromium and Node.JS on Alpine Linux or Debian. Good minimal base image for users of scraping libraries like [Puppeteer](https://github.com/GoogleChrome/puppeteer/).\n\n## Repository\n\nhttps://github.com/shivjm/docker-node-chromium/\n\n## Issues\n\nhttps://github.com/shivjm/docker-node-chromium/issues/\n\n## Tags\n\nSee all available tags at [Docker Hub (shivjm/node-chromium)](https://hub.docker.com/r/shivjm/node-chromium). No `latest` image is provided.\n\n### Alpine Linux\n\n\u003ccode\u003enode\u003cvar\u003eN\u003c/var\u003e-chromium\u003cvar\u003eC\u003c/var\u003e-alpine\u003c/code\u003e, where \u003cvar\u003eN\u003c/var\u003e is the Node.js major version number (12, 14, 16, 17, 18, 19, 20, or 22) and \u003cvar\u003eC\u003c/var\u003e is the Chromium major version number. For example, to use Node.js 14 with Chromium 81, use the `shivjm/node-chromium:node14-chromium81-alpine` image.\n\n### Debian\n\n\u003ccode\u003enode\u003cvar\u003eN\u003c/var\u003e-chromium\u003cvar\u003eC\u003c/var\u003e-debian\u003c/code\u003e, where \u003cvar\u003eN\u003c/var\u003e is the Node.js major version number (12, 14, 16, 17, 18, 19, 20, or 22) and \u003cvar\u003eC\u003c/var\u003e is the Chromium major version number. For example, to use Node.js 14 with Chromium 81, use the `shivjm/node-chromium:node14-chromium81-debian` image.\n\n## Versioning\n\nThe newest version of Chromium provided by Alpine Linux or Debian is used.\n\nThe version of the base distribution depends on [the upstream Node images](https://hub.docker.com/_/node?tab=tags\u0026page=1\u0026ordering=last_updated).\n\n## Example Dockerfiles\n\nSimple:\n\n```Dockerfile\nFROM shivjm/node-chromium:node14-chromium99-alpine\n\nWORKDIR /usr/src/app\n\nCOPY package.json package-lock.json ./\n\nRUN npm ci\n\nCOPY src .\n\nENTRYPOINT [\"npm\", \"start\"]\n```\n\nMulti-stage build to separate development dependencies from\nproduction:\n\n```Dockerfile\nFROM node:12-alpine AS build\n\nWORKDIR /usr/src/app-deps\n\nCOPY package.json package-lock.json ./\n\nRUN npm ci\n\nCOPY . .\n\nRUN npm run compile-my-code \u0026\u0026 \\\n  npm prune --production\n\nFROM shivjm/node-chromium:node18-chromium108-debian\n\nUSER node\n\nWORKDIR /usr/src/app\n\nCOPY package.json package-lock.json ./\n\nCOPY --from=build /usr/src/app-deps/node_modules ./node_modules\n\nCOPY --from=build /usr/src/app-deps/dist ./dist\n\nENV NODE_ENV=production\n\nENTRYPOINT [\"npm\", \"start\", \"--quiet\"]\n```\n\n## Puppeteer\n\nWhen you install Puppeteer, it also downloads a known version of Chromium to store under node_modules, and defaults to using that binary. You can skip this download using the environment variable `PUPPETEER_SKIP_CHROMIUM_DOWNLOAD`. You’ll also need to set `PUPPETEER_EXECUTABLE_PATH` to the installed Chromium. A partial example:\n\n```Dockerfile\n# (setup elided)\n\n# install dependencies but not Chromium:\n\nENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1\n\nRUN npm install\n\n# make Puppeteer use correct binary:\n\nENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser\n\n# (other build details elided)\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshivjm%2Fdocker-node-chromium","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshivjm%2Fdocker-node-chromium","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshivjm%2Fdocker-node-chromium/lists"}