Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/montferret/chromium
Dockerized headless Chromium
https://github.com/montferret/chromium
cdp chromium docker headless
Last synced: 2 months ago
JSON representation
Dockerized headless Chromium
- Host: GitHub
- URL: https://github.com/montferret/chromium
- Owner: MontFerret
- License: mit
- Created: 2019-04-15T22:51:46.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-03-28T18:59:07.000Z (almost 2 years ago)
- Last Synced: 2024-11-04T22:37:11.576Z (3 months ago)
- Topics: cdp, chromium, docker, headless
- Language: Shell
- Homepage:
- Size: 22.5 KB
- Stars: 14
- Watchers: 3
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Chromium
The project provides a Docker image containing an optimized version of Chromium for scraping, profiling, or testing web pages.
## Running
```bash
# pull latest version from DockerHub Registry
$ docker pull montferret/chromium:latest# pull latest version from GitHub Registry
$ docker pull ghcr.io/montferret/chromium:latest# run
$ docker run -d -p 9222:9222 --name headless-chromium montferret/chromium
$ docker run -d -p 9222:9222 --name headless-chromium ghcr.io/montferret/chromium# run with proxy
$ docker run -d -p 9222:9222 --name headless-chromium -e CHROME_OPTS='--proxy-server=my-proxy.com' montferret/chromium
$ docker run -d -p 9222:9222 --name headless-chromium -e CHROME_OPTS='--proxy-server=my-proxy.com' ghcr.io/montferret/chromium```
## Using as a base image
When using ``montferret/chromium`` as a base image to build an image that runs your own program, you can experience zombie process problem.
To reap zombie processeses, use dumb-init or tini on your Dockerfile's ENTRYPOINT:```bash
FROM montferret/chromium:latest
...
# Install dumb-init
RUN apt install dumb-init
...
ENTRYPOINT ["dumb-init", "--"]
CMD ["/bin/sh", "-c", "./entrypoint.sh & YOUR_PROGRAM"]
```If running Docker 1.13.0 or later, use docker run's --init arg instead to reap zombie processes.
```bash
docker run -d -p : --name --init
```