3 ms·
One very interesting piece of tech coming from it, is toolbox (https://github.com/containers/toolbox https://github.com/containers/toolbox). Basically throwaway
by maweki 6y ago
One very interesting piece of tech coming from it, is toolbox (https://github.com/containers/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.
- johnchristopher 6y agoI usually share a volume between containers (eg:: a volume for wp-cli cache, another for -g npm_modules). What benefits would toolbox add ?
- dnautics 6y agoa 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.
- maweki 6y agoYou could, for example, host the whole dev environment for a project in a container and still develop on the code in home.
- johnchristopher 6y agoAh, 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.
- curt15 6y ago>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.