Chrome-vnc
A multi-arch Docker chome VNC
Usage:
evironement variable
- X11_W: screen Width
- X11_H: screen Heigth
- EXTRA_CHROME_OPTION: add extra parameter to chrome
- URL: page to open
- PASSWORD: vnc password
- EVAL_URL: evaluate url before using it
secrets
- URL: page to open
- vncpasswd: vnc password
Build Steps
Build and test images
docker build -f ubuntu.Dockerfile -t urielch/chrome-vnc:ubuntu-$(uname -m) .
docker build -f alpine.Dockerfile -t urielch/chrome-vnc:alpine-$(uname -m) .
try it on a hevy website
docker run -d --rm -p 5900:5900 -e EXTRA_CHROME_OPTION="--lang=fr-FR,fr" -e X11_W=1024 -e X11_H=768 -e LANG="fr_FR.UTF-8" -e LC_ALL="fr_FR.UTF-8" -e URL=https://maps.google.fr --name chrome-ubu urielch/chrome-vnc:ubuntu
docker run -d --rm -p 5901:5900 -e EXTRA_CHROME_OPTION="--lang=fr-FR,fr" -e X11_W=1024 -e X11_H=768 -e LANG="fr_FR.UTF-8" -e LC_ALL="fr_FR.UTF-8" -e URL=https://maps.google.fr --name chrome-alp urielch/chrome-vnc:alpine-$(uname -m)
xvnc4viewer 127.0.0.1:0 &
xvnc4viewer 127.0.0.1:1 &
Upload arch images
docker login
docker push urielch/chrome-vnc:ubuntu-$(uname -m)
docker push urielch/chrome-vnc:alpine-$(uname -m)
Update multiArch Docker tag
edit ~/.docker/config.json add:
{
"experimental": "enabled"
}
docker rmi urielch/chrome-vnc:ubuntu
docker rmi urielch/chrome-vnc:alpine
docker manifest inspect urielch/chrome-vnc:ubuntu
docker manifest inspect urielch/chrome-vnc:alpine
docker manifest create urielch/chrome-vnc:ubuntu urielch/chrome-vnc:ubuntu-amd64 urielch/chrome-vnc:ubuntu-armhf urielch/chrome-vnc:ubuntu-aarch64
docker manifest create --amend urielch/chrome-vnc:alpine urielch/chrome-vnc:alpine-amd64 urielch/chrome-vnc:alpine-armhf
docker manifest push --purge urielch/chrome-vnc:ubuntu
docker manifest push --purge urielch/chrome-vnc:alpine
Test multi arch image
docker pull urielch/chrome-vnc:latest
docker run -p 5900:5900 --name chrome urielch/chrome-vnc:latest
Cleanup images
docker rm $(docker ps -a -q)
docker rmi $(docker images -q)