Sign inSign up

startx/vdi-chrome

By startx

•Updated over 1 year ago

Container-based chrome desktop application accessible using VNC client.

Image
3

100K+

startx/vdi-chrome repository overview

startxfr/docker-images

⁠Docker OS Images : Chrome

Simple container used to server VNC based chrome browser. Run chrome browser application⁠ under a container based on startx/fedora container⁠

Dockerhub Registry Build Status last commit Sources STARTX Profile licence

⁠Available flavours

  • :latest : Fedora core 29 + Chrome 50.0.2661.102
  • :fc28 : Fedora core 28 + Chrome 50.0.2661.102
  • :centos7 : CentOS 7 + Chrome
  • :alpine3 : Alpine 3.7 + Chrome 50.0.2661.102

⁠Running from dockerhub registry

  • with docker you can run docker run -it --name="vdi-chrome" startx/vdi-chrome from any docker host
  • with docker-compose you can create a docker-compose.yml file with the following content
service:
  image: startx/vdi-chrome:latest
  container_name: "vdi-chrome"
  volumes:
    - "/tmp/container/chrome/logs:/logs:z"
    - "/tmp/container/chrome/data:/home/chrome:z"
⁠Using this image as Openshift Build image

You can use this public image as a base image in your openshift build strategy. You can first import our openshift image stream⁠ and automatically add them in your service catalog. You can also test our deploy template⁠ or our build and deploy template⁠

# import image streams
oc create -f https://raw.githubusercontent.com/startxfr/docker-images/master/VDI/chrome/openshift-imageStreams.json
# import deploy template and start a sample application
oc create -f https://raw.githubusercontent.com/startxfr/docker-images/master/VDI/chrome/openshift-template.json
oc process startx-vdi-chrome-template | oc create -f -
# import build and deploy template and start a sample application
oc create -f https://raw.githubusercontent.com/startxfr/docker-images/master/VDI/chrome/openshift-template-build.json
oc process startx-vdi-chrome-build-template | oc create -f -
⁠Using this image as S2I builder

You can use this image as an s2i builder image.

s2i build https://github.com/startxfr/docker-images-example-chrome startx/vdi-chrome test-chrome
docker run --rm -i -t test-chrome

⁠Docker-compose in various situations

  • sample docker-compose.yml linked to host port 1000
service:
  image: startx/vdi-chrome:latest
  container_name: "vdi-chrome"
  ports:
    - "1000:5900"
  • sample docker-compose.yml with port exposed only to linked VDI
service:
  image: startx/vdi-chrome:latest
  container_name: "vdi-chrome"
  expose:
    - "5900"
  • sample docker-compose.yml using data container
data:
  image: startx/fedora:latest
  container_name: "vdi-chrome-data"
service:
  image: startx/vdi-chrome:latest
  container_name: "vdi-chrome"
  volume_from:
    - data:rw
⁠Using this image as base container

You can use this Dockerfile template to start a new personalized container based on this container. Create a file named Dockerfile in your project directory and copy this content inside. See docker guide⁠ for instructions on how to use this file.

FROM startx/vdi-chrome:latest
#... your container specifications
CMD ["/bin/sx", "run"]

⁠Environment variable

This container is based on startx fedora container⁠ who came with some additional environment variable⁠

VariableTypeMandatoryDescription
base image environementsee environment list⁠
SERVER_NAMEstringnoServer name for this container. If no name localhost will be assigned
HOSTNAMEautoautoContainer unique id automatically assigned by docker daemon at startup
LOG_PATHautoautodefault set to /logs and used as a volume mountpoint
APP_PATHautoautodefault set to /data and used as a volume mountpoint
SX_CHROME_SCREEN_RES_X1024x768x24autoDefine the screen resolution for X server
SX_CHROME_SCREEN_RES_CHROME1024,768autoDefine the screen resolution for Chrome GUI window

⁠Exposed port

PortDescription
5900standard httpd network port used for non encrypted http traffic

⁠Exposed volumes

Container directoryDescription
/logslog directory used to record container and chrome logs
/home/chromedata directory served by chrome. If empty will be filled with app on startup. In other case use content from mountpoint or data volumes

⁠Testing the desktop application

access to the running Browser with your favorites vnc client vinagre vnc://localhost:5900. Change port and hostname according to your current configuration

⁠For advanced users

You want to use this container and code to build and create locally this container, follow theses instructions.

This section will help you if you want to :

  • Get latest version of this desktop container
  • Enhance container content by adding instruction in Dockefile before build step

You must have a working environment with the source code of this repository. Read and follow how to setup your working environment⁠ to get a working directory. The following instructions assume you are at the top level of your working directory.

⁠Build & run a container using docker
  1. Jump into the container directory with cd VDI/chrome
  2. Build the container using docker build -t vdi-chrome .
  3. Run this container
  4. Interactively with docker run -p 5900:5900 -v /data:/home/chrome -it vdi-chrome. If you add a second parameter (like /bin/bash) to will run this command instead of the default entrypoint. Usefull to interact with this container (ex: /bin/bash, /bin/ps -a, /bin/df -h,...)
  5. As a daemon with docker run -p 5900:5900 -v /data:/home/chrome -d vdi-chrome
⁠Build & run a container using docker-compose
  1. Jump into the container directory with cd VDI/chrome
  2. Run this container
  3. Interactively with docker-compose up Startup logs appears and escaping this command stop the container
  4. As a daemon with docker-compose up -d. Container startup logs can be read using docker-compose logs

If you experience trouble with port already used, edit docker-compose.yml file and change port mapping

Tag summary

Content type

Image

Digest

sha256:e29dcc79c…

Size

445.7 MB

Last updated

over 1 year ago

docker pull startx/vdi-chrome