Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

One very interesting piece of tech coming from it, is toolbox (https://github.com/containers/toolbox). Basically throwaway (or keeparound) rootless containers with their own root directory but shared HOME. Install hundreds of dev-dependencies to build this one piece of software? Yeah, not gonna install those packages permanently. Spin up a toolbox, build it, install it in my home/.local.

You have root in the container without having root in the host system. That takes care of a lot of issues as well.



I usually share a volume between containers (eg:: a volume for wp-cli cache, another for -g npm_modules).

What benefits would toolbox add ?


a lot of software expects a usable home directory. There was another type of containerization (syos) which was designed for HPC use cases (think deploying 10k nodes doing one thing many times in parallel divvying up and pulling a shared dataset on a academic or industry (pharma), cluster with a high performance distributed filesystem underneath) that did this, however syos is not appropriate for most webscale use.


You could, for example, host the whole dev environment for a project in a container and still develop on the code in home.


Ah, I see ; put the whole dev toolchain in the container.

I use bindfs to mount the volume. I have a $HOME/Dev folders with WPProjectA, WPProjectB folders. Each has a volume subfolder mounted like that (the script has more variables but that's the gist of it):

    /usr/bin/bindfs \
        --force-user=johnchristopher \
        --force-group=johnchristopher \
        --create-for-user=www-data \
        --create-for-group=www-data \
        /var/lib/docker/volumes/WPProjectA-web/_data \
        $HOME/Dev/WPProjectA/volume
This setup allows using VSCode+xdebug and editing the code in the mounted volume while running the container and remote debugging.


>Basically throwaway (or keeparound) rootless containers

Toolbox emphasises "keeparound" containers since it's intended to be the primary command-line environment for image-based systems like Silverblue or CoreOS. Such systems try to keep a small, atomically updated rootfs and push users to install everything in containers.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: