Incus - Linux Containers
08/02/2025, SatAlternative to Distrobox
The desire for isolated and on-demand development environments can be met with Distrobox, however it isn't well suited for development in terms of flexibility.
One shortcoming with that Distrobox is that it doesn't offer the option to specify the location drive for containers. This option is handled by the container software that is used with Distrobox. While docker does offer a way to specify a way to use containers in another drive, Distrobox didn't quite work well with docker when the storage location of containers was changed in the docker from my experience.
Since Distrobox is wrapping the functionality of either docker or Podman, which means that it lives with the limitations of docker or Podman. There is also the great likelihood that some features can't be mapped perfectly.
To address this issue, one would want to use a more full-fledge solution such as Incus. With Incus, you no longer have to install a container application such as Podman or docker with Distrobox for environment isolation.
System Containers
Incus has multi-container management in mind such as clustering. This leads to need to also manage containers in multiple locations which would mean Incus should have the option to specify the creation of containers are located in different drive locations.
Incus also many other properties that makes it easier to manage containers. Incus offers systems container which is one level over docker's application containers. Docker containers can also be run inside an Incus container.
Incus also provides actual VM containers for even greater levels of isolation which Distrobox does not offer.
Backup and Restoration
Backing up and restoring your containers are also critical features that are not taken as an afterthought because Incus has dedicated snapshotting and restoration functionality.
# Save snapshot
incus snapshot create <instance_name> <snapshot_name>
# Restore snapshot
incus snapshot restore <instance_name> <snapshot_name>
# Delete snapshot
incus snapshot delete <container> <snapshot_name>
Another benefit of Incus snapshots is that you can delete earlier snapshots without affecting the later snapshots, which is something not supported in Docker.
Another additional back up functionality aside from the snapshot feature listed above is provided by tar snapshots. When you back up your container with this command, you can use this feature to save the image to other file systems other than Linux file system types (NTFS)
incus export <instance_name> /path/to/backupfile.tar.gz
Isolation and Sharing Data
A Distrobox container shares the home path as the host's home path, but this level of integration might be problematic down the line. With Incus, by default, you get home directory isolation, but if you wish to share files between the host and container, you can use either the pull or push commands.
# Retrieving a file from the container to the host
incus file pull <instance_name>/etc/hosts .
# Sending a file from host to the container
incus file push -r host/path <instance_name>/file/path
Conclusion
Incus as a container management tools has all the basic features that you would expect for convenient set up, use and maintenance of your containers because it has all the features you normally use in Distrobox while offering more functionality.