This article is more than 1 year old
Distrobox 1.3.0: Run (pretty much) any Linux distro under almost any other
Latest version of simplified container tool for penguins is out
Developer Luca di Maio has released version 1.3.0 of DistroBox, a tool to simplify running different versions of Linux in containers.
Distrobox is likely to be one of those tools that sounds either great or totally mystifying, depending on the sort of Linux user you are. If you routinely have to work with multiple different distros, you may be in the former group, and DistroBox could save you a fair amount of time and effort.
The tool is intended to simplify the creation and use of Linux system containers, making it easy to run one distro on top of another without the overhead of virtual machines. If you actively want virtual machines, or you're more used to them, you might know Vagrant.
In case you don't, Vagrant is a handy tool to automate away some of the tedious software configuration management (SCM) of working with VMs.
It's a wrapper around your choice of hypervisor and SCM tools (primarily Puppet and Chef).
With a single command, Vagrant will create a new VM, install the OS of your choice in it and configure it. Then with another command, you can make an SSH connection into the new VM.
Distrobox does something similar to this, but using containers. So it's smaller, simpler, and much lighter-weight, but by the definition of OS-level virtualization, it can only support running Linux environments on a Linux host.
Even if you don't work with this stuff, you're doubtless well aware that there are lots of Linux distros out there, and many of them are profoundly different from one another. If you develop or manage software that runs on Linux, you have to allow for these differences, which means a lot of testing and switching boxes and distros.
Distrobox is intended to simplify this and make some of the pain go away. It's a wrapper around two of the most common Linux container runtimes, Docker and Podman.
It offers commands to create, enter, leave, and remove Linux system containers: that is, a complete OS except the kernel, running inside a container on your existing kernel. So each container has its own
init system and all the core files which make one distro different from another.
- Windows Subsystem for Linux gets bleeding-edge Ubuntu
- Minimal, systemd-free Alpine Linux releases version 3.16
- Red Hat Kubernetes security report finds people are the problem
- Hardening in the enterprise: SUSE releases Rancher 2.6.5 and NeuVector 5.0
It wraps the container engine in a simple command line, with just six commands:
version. So, for instance, if you're running Fedora, you could create an Ubuntu container and test apps just as if they were running on Ubuntu.
But it's more powerful than just that. If you're using an immutable distro such as the Silverblue version of Fedora, you can add a conventional distro in a container, and then inside that you can install and run apps as normal, and they will run directly on your kernel. Or on a non-glibc distro such as Alpine Linux, run an app that needs glibc, such as Google Chrome. Distrobox maps your home directory into its containers by default so all your normal files are available, and you can run graphical apps that use both X.org and Wayland.