A shell script that switches a Linux distribution's package sources to domestic mirrors, plus a separate script for installing Docker and configuring registry mirrors.
89luca89/distrobox
Distrobox runs any Linux distribution inside your terminal, tightly integrated with the host's home directory, GUI apps, audio and devices.
- Stars
- 13,102
- Forks
- 550
- Open issues
- 154
- Last commit
- 5 days ago
What is it?
Distrobox is a wrapper around podman, docker or lilipod that creates containers from the Linux distribution of your choice and lets you use them from your terminal. Unlike a plain container, the created environment is designed to integrate with the host: it shares the user's HOME directory, external storage and USB devices, and supports graphical apps on X11 and Wayland, audio, the SSH agent and D-Bus.
Distrobox ships as a single binary with subcommands to create, enter, list, stop, upgrade and remove containers, plus helpers that run inside a container to export apps to the host or run host commands from within. Containers can also be declared in a manifest and created in batch with distrobox assemble. Isolation is not a goal; the container has full access to your home directory.
The project is written in Go, with in-container helpers in POSIX shell so they work on any distribution the binary runs on. It is a rewrite of the earlier shell-based tool and follows the same concepts as the containers/toolbox project.
Key features
- 01Creates containers from many distributions such as Ubuntu, Debian, Fedora, Arch and Alpine.
- 02Shares the host HOME directory, external storage, USB devices and audio.
- 03Runs graphical apps on X11 and Wayland.
- 04Exports container apps to the host application list.
- 05Batch creates and removes containers from a manifest file with distrobox assemble.
Use cases
- Running development tools from another distribution on an immutable host such as Fedora Silverblue or SteamOS.
- Using packages that are unavailable on the host without changing the base system.
- Keeping a stable base distribution while running a bleeding-edge userland for development.
- Running sudoless setups on machines where root access is restricted.
Quick start
- 1
Install a supported container manager such as podman, docker or lilipod
- 2
Install distrobox by following the Installation section of the README
- 3
Create a container
distrobox create - 4
Enter the container
distrobox enter
Things to know
- Requires podman, docker or lilipod to be installed first.
- Licensed under GPL-3.0, a copyleft license that requires derivative works to remain open source.
In collections
Topics
FAQ
- What is distrobox?
- Distrobox runs any Linux distribution inside your terminal, tightly integrated with the host's home directory, GUI apps, audio and devices. Distrobox is a wrapper around podman, docker or lilipod that creates containers from the Linux distribution of your choice and lets you use them from your terminal. Unlike a plain container, the created environment is designed to integrate with the host: it shares the user's HOME directory, external storage and USB devices, and supports graphical apps on X11 and Wayland, audio, the SSH agent and D-Bus.
- Is distrobox free to use? What license does it have?
- distrobox is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
- Is distrobox still maintained?
- Actively maintained. The last commit to distrobox was on Nov 2, 2026.
- What can I use distrobox for?
- Running development tools from another distribution on an immutable host such as Fedora Silverblue or SteamOS. Using packages that are unavailable on the host without changing the base system. Keeping a stable base distribution while running a bleeding-edge userland for development. Running sudoless setups on machines where root access is restricted.
- How do I install distrobox?
- Install a supported container manager such as podman, docker or lilipod Install distrobox by following the Installation section of the README Create a container: distrobox create Enter the container: distrobox enter
- Where can I get distrobox?
- The source code and installation instructions are on GitHub: https://github.com/89luca89/distrobox
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A graphical desktop app for building, running and managing containers and Kubernetes locally, built on Podman and other container engines.
A rootless Android app that boots a real Alpine Linux VM so you can run Podman, Docker, LXC containers and X11 GUI apps on your phone.
A desktop GUI companion for managing Podman containers, pods, images and engine connections, with optional Docker support.
Docker images that run full Linux desktop environments (XFCE, KDE, MATE, i3, LXQt) in any modern web browser.
A small Alpine Linux Docker image that runs PHP-FPM 8.5 and Nginx together, serving PHP apps out of the box.