podmantoolbox

With the toolbox container tool, can I run an Ubuntu toolbox on top of a Fedora host?


https://github.com/containers/toolbox is a system for integrating containers more closely with a host environment, so that you can switch into a toolbox, automatically give it access to your home directory, and install some compilers.

Can toolbox be used to install Ubuntu on top of a Fedora [Silverblue] host? The default configuration doesn't know about the --distro Ubuntu.


Solution

  • It looks like the toolbox create command has a --image option, so you could try running:

    toolbox create --image docker.io/ubuntu:22.10 ubuntu-toolbox
    

    And that almost works, except that toolbox seems to really want the capsh command to be available inside the container. So if we use the following Dockerfile:

    FROM docker.io/ubuntu:22.10
    
    RUN apt-get update; apt-get -y install libcap2-bin; apt-get clean
    

    And build an ubuntu-toolbox image:

    podman build -t ubuntu-toolbox .
    

    And then create a toolbox:

    toolbox create --image ubuntu-toolbox ubuntu-toolbox
    

    We can now enter our toolbox:

    $ grep NAME /etc/os-release
    NAME="Fedora Linux"
    VERSION_CODENAME=""
    PRETTY_NAME="Fedora Linux 37 (Workstation Edition)"
    CPE_NAME="cpe:/o:fedoraproject:fedora:37"
    DEFAULT_HOSTNAME="fedora"
    $ toolbox enter ubuntu-toolbox
    $ grep NAME /etc/os-release
    PRETTY_NAME="Ubuntu 22.10"
    NAME="Ubuntu"
    VERSION_CODENAME=kinetic
    UBUNTU_CODENAME=kinetic