There’s going to be a bit of clickbait here, as I’ve written this article around using Webtops on a Chromebook to answer a specific need some people seem to ask a lot around Chromebooks.

Its plainly obvious to anyone reading this that the technology is not limited to Chromebooks, its based on a Docker container so will run anywhere docker does.

So the question I get asked a lot is “Can I run a Linux desktop on a Chromebook?@ to which I assume that the person is asking, “Can I delete ChromeOS and install Ubuntu on a cheap Chromebook?”

While I find this question annoying, it is of course possible, but then you lose the point of the Chromebook.

There is another way…

Usually, I’d suggest Kasm for this, however, I appreciate it takes a little setting up to get it all working.  Recently I found another way..

You can get a full Linux Desktop running on a Chromebook inside a browser Windows using something called Webtops.

linuxserver/webtop – LinuxServer.io

The process here is to simply

Setup Docker

Enable Linux Shell on the Chromebook

Set up Linux on your Chromebook – Chromebook Help
Linux is a feature that lets you develop software using your Chromebook. You can install Linux command-line tools, code editors and IDEs (integrated development environments) on your Chromebook. These

Once installed and updated install Docker-ce

How to install and run Docker on a Chromebook
This time, I would like to share a small script that will allow you to turn on your Chromebook into a machine capable of running Docker containers.

Docker Run

Once Docker is installed and running  run the following docker command

docker run -d \  --name=webtop \  --security-opt seccomp=unconfined `#optional` \  -e PUID=1000 \  -e PGID=1000 \  -e TZ=Europe/London \  -e SUBFOLDER=/ `#optional` \  -e KEYBOARD=en-us-qwerty `#optional` \  -p 3000:3000 \  -v /path/to/data:/config \  -v /var/run/docker.sock:/var/run/docker.sock `#optional` \  --shm-size="1gb" `#optional` \  --restart unless-stopped \  lscr.io/linuxserver/webtop

There are a few lines in this docker run command which need to be aware of

-v /path/to/data:/config /path/to/data is the local folder within the Linux Shell where the configuration will be held
-e KEYBOARD=en-us-qwerty There is a growing list of keyboard options on the Webtop support page including en-gb-qwerty
lscr.io/linuxserver/webtop Apply a version tag like webtop:ubuntu-kde to spin up the preferred DE listed at

Version Tags

Login

The Webtop can be accessed at:

http://localhost:3000/

By default the user/pass is abc/abc, if you change your password or want to login manually to the GUI session for any reason use the following link:

http://yourhost:3000/?login=true

This would (if you were running XFCE take you to a Linux Desktop like this where you can use the package manager to install the apps you want.

Additionals

Unlike our other containers these Desktops are not designed to be upgraded by Docker, you will keep your home directory but anything you installed system level will be lost if you upgrade an existing container. To keep packages up to date instead use Ubuntu’s own apt, Alpine’s apk, Fedora’s dnf, or Arch’s pacman program

Video

I put together a quick video of this running Fedora KDE on my Acer 715 Chromebook.

Thoughts

I like the potential of running a Linux Desktop Environment through a web browser on a system like ChromeOS instead of needing to boot in or out of one. While 90% of my Linux needs are sorted using the actual Linux shell, this is another good choice to have available.

I’m also happy that the choice of KDE includes Ubuntu and Fedora.

By davidfield

Tech Entusiast