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

I feel the opposite. I won't install anything except official OS packages outside Docker, if I can avoid it. Sick of polluting my filesystem with things that are hard to update, conflict with other installed packages, mess with my shell startup files, unnecessarily request root access to install, install to weird places, don't play nice with other installed packages, and on and on.

Docker is not without complications, but it alleviates far more problems than it causes. I get annoyed when something is released and doesn't have an official Dockerized version. Especially when it's a web service.

I'm a Python/Ruby/Javascript developer, and I don't want any part of those installed except on my dev machine. Unfortunately Python has infested too much of Ubuntu to avoid.




Have you given Nix a try? It's fully solved this problem for me, and it also has Dockerfile generation down great. Nothing else comes even close

What's really nice is using direnv to cd into a directory and having a flake.nix file in it which changes the entire system to what I need to do in that folder. So I don't need any of my dev environment to be system-wide, everything is per project. That alone has cut my system down to pretty much just system tools (replacements for shell commands), productivity tools (Obsidian, bitwarden, etc), and my browser. It's just so nice.


I haven't used Nix. It looks like it might be a good solution for CLIs and developer tools, but from what I know of it, it doesn't supplant Docker (or snaps or manual installation/configuration) for the kinds of things I use Docker for. Most of my personal Docker usage is for selfhosted web applications, like Nextcloud, Vaultwarden, Gitea, Drone, Wekan, Wiki.js, etc. I also now use Docker for things that I'd historically run directly on the host, like Postfix, Dovecot, Postgres, Redis, etc. I have a Proxmox VM running Docker for all my selfhosted stuff, and there's almost nothing installed outside Docker, except a few CLI clients for connecting to databases and testing things (psql, redis-cli). I run a separate VM with media servers in Docker, and another VM with my full dev environment, with Python venv, RVM, NVM, build-essential, etc. installed. Nix might be worth investigating for the dev VM, but I don't want all the selfhosted web services running outside a containerized environment (be it Docker or Kubernetes).



> What's really nice is using direnv to cd into a directory and having a flake.nix file in it which changes the entire system to what I need to do in that folder.

How cross-platform is direnv + Nix? Do flake.nix files have macOS/Linux versions?

One of the biggest advantages of using Docker images as a package format is that it's (sort of) cross-platform via Docker desktop and such on a Mac. I would prefer to use something like Nix if possible if it solves the problem a different way (being aware of platforms).


Darwin is one of the supported architectures, yes, though it is a bit of a second class citizen in the Nix ecosystem when compared to x86_64-linux.




Join us for AI Startup School this June 16-17 in San Francisco!

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

Search: