Re:Show HN: Hatch – A modern project, package, and virtual e...
by floatboth on Tuesday September 05, 2017 @12:00PM
(#15176459)
Is it really computationally expensive? Containers/jails/zones are essentially chroots "on steroids", isolating things other than the filesystem (networking, hostname, process IDs, users, etc.)
Re:Show HN: Hatch – A modern project, package, and virtual e...
by 0xCMP on Tuesday September 05, 2017 @01:40PM
(#15177403)
Once built a docker container is not expensive, but the idea with Docker is to create immutable, layered containers and rebuilding every time there is a change. Unlike with nodejs, it's harder to volume mount python packages installed in the docker container and so no one does it.
Change in requirements means rebuilding the container which is a very computationally and IO expensive process. So if you can get away with it virtualenv is better, but putting everything in a container so you can simply ship a container is also useful. It's a compromise.
Re:Show HN: Hatch – A modern project, package, and virtual e...
by icebraining on Tuesday September 05, 2017 @02:27PM
(#15177859)
Rebuilding the container shouldn't be expensive, that's what layers are for.
Re:Show HN: Hatch – A modern project, package, and virtual e...
by 0xCMP on Tuesday September 05, 2017 @03:55PM
(#15178580)
A layer with your pip requirements being added and then installed is the most expensive part of building a python container so if you change your requirements you invalidate the cache for that layer (and possibly the other layers above).
...with a very computationally expensive solution, and without improving other aspects like security.
A systemd unit on a "chroot" can do the same and provide isolation.