Live data from Hacker News

Docker Considered Harmful (2016)

catern.com

131–140 of 188 posts

Re: Docker Considered Harmful (2016)

#131

I think Docker is very useful for beginning developers and for spinning up and trying out services quickly. The barrier for getting started with web development used to be so much higher, even for people on Mac OSX. To setup a rails development environment with a modern JS frontend, you'd have to setup xcode, mysql, redis, a node build pipeline, homebrew, and futz with system ruby vs rails-specific ruby. You'd have t…

The author seems a bit out of touch. I'm a junior dev and starting a db for development is as easy as `docker run redis`. I don't even know half the tools he mentioned and i will not read the linux source documentation like he suggested to get isolation for my services.

> i will not read the linux source documentation like he suggested to get isolation for my services.

that are likely running as root on a base kernel that is out of date with vulnerabilities..

Re: Docker Considered Harmful (2016)

#132
I'm waiting for someone to invent a simple Heroku-on-your-own-server kind of thing that you can use to run small apps, maybe on top of Docker.

Dokku is not that option. Dokku is a super-complex operating system by itself, a mistery of stuff glued into each other by bash scripts, full of bugs and corner cases.

Re: Docker Considered Harmful (2016)

#133
post #120

This article is ignoring the benefits of standardization. Let's compare it to some other "unnecessary" thing, actual containers: You can put stuff on ships without them, but turns out that once you start using them, just the fact that everything is standardized gives you insane benefits. Of course you could reimplement each part of Docker differently. Of course it's not magic. Nothing is magic about a metal box, and…

That's a nice metaphor, but it's still not at all certain that Docker is the standard solution. We've had Linux for 20 years and we still don't have a single standard package manager; Docker's been around for 5 years and it's already been abstracted over by systems like Kubernetes, making Docker itself less and less relevant. What is certain is that systems like Debian and Fedora are not going away. Your Docker image…

Because there's standardisation beyond just where the app/server/whatever is going to run in production - having a standard way to spin up, describe and control applications & their dependencies that works cross OS lets developers & devops speak the same language, with the same commands.

Is docker the silver bullet for this? No, there's tons of other options. But "everyone should use Debian and Fedora" isn't a realistic standardisation.

Re: Docker Considered Harmful (2016)

#134
post #107

Earlier quoted context omitted.

> One feature driving Docker adoption that I think a lot of people miss is that it's got fairly workable (if warty in one case and obnoxious in the other) implementations for OS X and Windows. That removes a lot of friction for developers who work in companies where IT won't support Linux on employee workstations. Vagrant does this, too. Sure, it runs a VM, but so does Docker.

Vagrant runs a VM per app . Sometimes more. Big difference.

Since when? I run multiple apps on vagrant every day. That is pretty standard.

Re: Docker Considered Harmful (2016)

#135

Earlier quoted context omitted.

> Sure, your ops team can put together a bunch of stuff manually. And then you can create a bunch of extra stuff that makes it easier for development to handle all of that inside virtual machines, and get the network bridging between those apps and the host machine working properly, and all that fun stuff. I think this is one of the biggest reasons people use Docker, although they tend to forget to mention it since i…

In default docker installation on most Linux boxes, communication to docker socket itself requires elevated privilege. You can't even do `docker ps`. In jobs I held - people who can pull images and run container on servers, they also could install stuff if they wanted. Is running privileged containers blocked? It just seems something broke down in engineering process, if developers has to bypass admins to install stu…

Access vs authorization. You can use docker to get yourself local root. If you do it and admins find out you'll be in hot water.

Re: Docker Considered Harmful (2016)

#136
post #130
post #50

Earlier quoted context omitted.

I use Docker daily, and I almost never find it complicated. I use it for build servers and my companies infrastructure. The alternative would be a nightmare to me.

> The alternative the fact that the singular is used in response to a thread concerning considering options and diving deep is telling.

Your getting caught up in semantics.

Docker is the best way to have reproducable build environments. I've been doing it for years with my packages, as well as embedded Linux.

Docker is also a very easy way to deploy applications/servers. I have been doing it for years and it's been nothing but smooth.

Give me an actual problem that isn't ridiculous and self-inflicted.

Re: Docker Considered Harmful (2016)

#138
post #53

Earlier quoted context omitted.

> Every "Docker Considered Harmful" post I've read basically boils down to "Why would you use Docker if you can use the 10 technologies it wraps around and manage them yourself instead?" Why would I want to do that if I don't have to? Or if you can't? One feature driving Docker adoption that I think a lot of people miss is that it's got fairly workable (if warty in one case and obnoxious in the other) implementations…

It empowers developers to side step many of the best practices learned in SDLC over the last 20 years and ship code they shouldn't The code is then running on a fault tolerant platform which masks the bugs and makes ops life hell when it comes to actual debugging. Additionally upgrades and other assumptions about the base OS and system management are simply swept under the carpet with pretending those issues no longe…

> you run it in GCP where they take care of that part for you

Although I'm generally inclined to agree with your positions on this thread (biased as I am due to my Ops profession), this doesn't seem like a valid criticism.

If Docker-on-GCP actually does address all the issues from the perspective of the developers/customers/users, then it's a plausible solution. The only consideration would be cost.

Re: Docker Considered Harmful (2016)

#139
post #103
post #6

This feels a bit like "Why use Dropbox when rsync exists?" type of argument. Sure, you can do everything docker does with shell scripts, and you've been able to for decades, but many people didn't, because it was "complicated". There is often a huge amount of value in simplifying things, even if it means losing some of the power and the end result being objectively worse.

Reminded me of this HN comment regarding Dropbox right when it launched: https://news.ycombinator.com/item?id=9224

Thanks that was a good laugh (I know, hindsight etc. etc.)

Re: Docker Considered Harmful (2016)

#140
Sure. I "just" have to go read man pages for days to understand 20 different commands. "Just" use several commands to isolate my not-a-container. "Just" use debootstrap (or not on different distros!), or actually maybe "just" use nix and guix. And "just" carefully use several btrfs-subvolume commands (or not if you want aufs, zfs, or something else!). And "just" a few more things after that - maybe "just" use systemd-nspawn (or not, for any non systemd system).

It's always "just" one more tool I can cobble together to provide what Docker gives me. This is not simple. Docker is not a bad tool for abstracting away all of these underlying details.

I'm not going to pretend that Docker is simple or flawless. But it has reasonable defaults and is easy to use. It is easy to pull containers and run them. It is easy to install on Linux, OS X, and Windows (or maybe I should "just" figure out how to run a hypervisor). It is easy to read and write a dockerfile. Critically, it is just as easy for my coworkers to use Docker as well.

Post reply on HN