Docker on a cloud development machine, with root

Most hosted development environments are themselves containers, which is why running containers inside them is awkward or forbidden. This is a whole VM, so the container runtime is just software on it.

Docker is installed as part of the build and access to it is opt-in.

How it arrives

On the machine
Installed as part of the build
How you run it
A command line tool — you run it in a terminal tab

We did not write Docker. It is moby/moby — the engine behind the docker command; machines install Ubuntu's build of it. We install it on every machine and put it behind the login.

Why the VM matters

You have root on a machine that is yours for the term. Compose files, bind mounts, privileged flags and custom networks behave the way they do on a server, because it is one.

Containers that keep running

The machine is a real VM that keeps running when you close the tab. A process you start does not stop because your laptop slept, your train went into a tunnel, or you switched to your phone.

Questions

Can I run Docker Compose?
Yes. It is a full VM with root, so the container runtime behaves as it would on any server you own.
Is Docker enabled by default?
It is installed on every machine; access to it is opt-in rather than on from the start.

Once you have one

It comes with the machine

Every tool on this site is installed on every machine. You are choosing a size, not a bundle.

Also installed