News for hackers. Stuff that matters.
Re:Ask HN: What are the disadvantages of Docker? by bdcravens on Saturday April 21, 2018 @05:23PM (#16893523)
For certain apps, if you're on OSX, file system performance is horrible when developing, especially on apps with a lot of file churn. I wrote about it here, and how I was able to get most of the performance back: https://medium.com/@bdcravens/fixing-docker-for-mac-and-rail...

Even so, this seems like a silly problem to have to worry about, since I could easily run the app on my machine at full performance with no workarounds.

I think the biggest disadvantage is the herd mentality. Rather than use Docker where it provides a compelling advantage, we're being told to Dockerize all the things and accept any pains that comes with as the price of progress. To me it's as if you had a purely static site yet were told you needed to use React and webpack. Solve for the pain you have, not what others have.

> But someone who likes to tinker with servers using scripting like bash etc, I don't get docker.

I will say that there is a point where if you like tiny utilities and the "unix" way, Docker starts to make sense. Rather than have a giant OS with all its varied dependencies, making tiny containers that do one thing well and are tied together (for instance, I have a tiny container that monitors a networked folder and uploads to s3) - you start seeing Docker not as VMs, but as isolated but connected processes.

Re:Ask HN: What are the disadvantages of Docker? by qorrect on Saturday April 21, 2018 @06:18PM (#16893697)
> but as isolated but connected processes.

How are they connected ?

Re:Ask HN: What are the disadvantages of Docker? by imauld on Saturday April 21, 2018 @08:21PM (#16894096)
You can create a virtual networks and have all the related containers running on one of these networks. They can communicate directly to each other in the docker compose method (define a service `foo` and any container on that network can communicate with it like `http://foo/some/endpoint`) or have a some other message bus (redis, rabbitmq, zeromq, kafka whatever you want really) running on the docker network that the other containers use to communicate.

Is this the best solution always? Probably not.

An example of using a Docker container as an isolated system process would be Spotify's `docker-gc`.

https://github.com/spotify/docker-gc