Hacker News new | past | comments | ask | show | jobs | submit login

Randomly picking on your post, but I could easily have responded to a many in this thread. Docker doesn't solve the problem that you are complaining about. It doesn't even try to solve that problem. It's just an environment for building and running containers. You can pick any package manager you want with Docker. The fact that there currently aren't any good package managers to use with Docker isn't Docker's fault.

I think one of the big problems is that people are using insane base images (and by "people" I include myself, because I'm guilty of it too). A Debian distro is not an appropriate base image for a Rails server, for instance.

For what it's worth, though, there is nothing stopping you from using apt the way you want. You have to do it all by hand (i.e. specify the versions you want when you install them). The dockerfile is your lockfile. I have been thinking that something like Guix is a much better fit, though. I just haven't gotten around to trying it...

There's alternatives to Dockerfiles for container building and maintenance, such as Packer [1] and Ansible Container [2].

[1]: https://www.packer.io/docs/builders/docker.html

[2]: https://docs.ansible.com/ansible-container/

FWIW I made a presentation years ago about this topic (it's in the second half):


But Docker is the problem, because all that Docker isolates you from is the self-made problem of mixed library situations on host systems, at the expense of loosing an easy ugrade path for said libs, running the Docker daemon as root, and loosing the host authentication context. A very bad trade-off.

Applications are open for YC Winter 2020

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