Docker In Crostini

Crostini is the code name for the feature in Chrome OS that enables running Linux applications. It is an implementation of LXC containers running in a virtual machine that Google named termina.

The default configuration of Crostini runs one container named penguin to which the Linux Terminal application is mapped.

One can run multiple containers in termina and you can run multiple virtual machines. Google recommends running one virtual machine with multiple containers.

I followed instructions posted on the Crostini subreddit to create a new container I named fjmdocker. reddit

To test I installed the Flatpack version of Firefox in the fjmdocker container. reddit

GUI apps you install in a running container are automatically added to the Linux Apps group of the Chrome OS launcher. I find amusement in the fact that I can run Firefox on a Google Pixelbook.

To kick up the amusement I installed Docker in my new LXC container using the instructions posted on reddit. I did not run the script provided on reddit, instead I manually executed the steps in the script's get_docker function. reddit

While my account is added to the docker group in the container, I cannot run docker commands without using sudo. I tested Docker by running the hello-world container.

Next, I tested Docker by running the River4 container I created and published to my Docker Hub account. I found that I could not access the fjmdocker container via localhost and that I needed the IP address of the container in order to open the River4 web page. site

To get the IP address you ctrl-alt-t to access crosh and then:

vmc start termina lxc list

To list the running containers. Make note of the IP address for the fjmdocker container and used that to access the River4 web page in the browser.

If you need to start fjmdocker enter:

run_container.sh --container_name fjmdocker --shell --user myuser

I have installed Gnome Terminal in the fjmdocker container and the icon for Gnome Terminal is in the shelf, therefore to start the fjmdocker container all I need to do is click the Gnome Terminal icon. It will take longer to load initially because the container needs to start.

For more information about what I am doing with Docker on my Pixelbook see Experiments With Docker On Pixelbook.