Live data from Hacker News

Ask HN: Is it just me or why does Docker suck so much?

news.ycombinator.com

1–10 of 85 posts

Ask HN: Is it just me or why does Docker suck so much?

#1
For all the massive hype about docker, I am hugely dissapointed.

Not being able to change /etc/hosts, /etc/resolv.conf of a container, ugh. Requiring some really ugly hacks just to actually provide an real "containement" of an entire applications environment - "uh yeah except hosts and resolv, cant do that".

The command syntax is lies, docker rmi can untag an image not really remove, and who came up with the name rmi? docker images already exist, docker images -rm someId would be sane.

The biggest flaw though, is that its a pain in the ass to setup a private repository and actually use it.

Isnt there some saner alternatives, like lxc with images and shareing?

Re: Ask HN: Is it just me or why does Docker suck so much?

#5
post #3

Q: Why do you want to change /etc/hosts and /etc/resolv.conf (besides hacking DNS for testing purposes)?

some of us use HOSTS to write config

e.g.

    10.0.12.34 mysql_host
This allows some degree of flexbility

1. boot up new instances quickly as long as HOSTS is correct

2. Don't have to hard-code actual mysql server IPs.

3. Make mysql master/slave failover much easier.

Re: Ask HN: Is it just me or why does Docker suck so much?

#8
Discussion about the issue is here: https://github.com/docker/docker/issues/2267

That said:

With a DHCP server, you get this warning when you try to edit /etc/resolv.conf: "Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN"

Docker works in a similar fashion to assign IPs so this shouldn't be surprising.

http://askubuntu.com/questions/475764/docker-io-dns-doesnt-w... http://docs.docker.com/installation/ubuntulinux/

You are supposed to modify /etc/default/docker and use a consistent group of DNS servers per-host. Its simple and it works, honestly.

DOCKER_OPTS="--dns 8.8.8.8"

Can you tell I disagree? ;)

/etc/hosts shouldn't need modification if you control your dns server...since you can just place whatever you need there.

As for alternatives...

Docker is popular because all the alternatives are much larger PIA to manage.

I'd suggest, if you dislike their private repo system, you just use git to manage the files for each docker image and create it locally on the host. [e.g. git clone, cd, docker build .]

I honestly fine that works well enough and means I don't have to maintain more than a single gitlab instance for my projects.

Re: Ask HN: Is it just me or why does Docker suck so much?

#9
post #5
post #3

Q: Why do you want to change /etc/hosts and /etc/resolv.conf (besides hacking DNS for testing purposes)?

some of us use HOSTS to write config e.g. 10.0.12.34 mysql_host This allows some degree of flexbility 1. boot up new instances quickly as long as HOSTS is correct 2. Don't have to hard-code actual mysql server IPs. 3. Make mysql master/slave failover much easier.

I think most folks doing devops end up using things more like zookeeper, consul, etc. instead to perform the above as opposed to hosts.

Re: Ask HN: Is it just me or why does Docker suck so much?

#10
I've been waiting for the hype to die down a bit and for the project to stabilise before properly playing with it but, from the outside looking in, I must admit I struggle to see how it's gaining as much attention as it is.

I can see the advantage for dev boxes where a developer might want to setup a load of containers on their machine to emulate a staging or production environment. But I don't really understand why you'd want to base your entire production infrastructure on it.

What's wrong with setting up kvm "gold" images for your various server types (db server, redis instance, ha proxy server etc.) and then just dd'ing those images to host machines and using ansible/puppet/chef to do any final role configuration on first boot? At least that way you've got all the security and flexibility a proper vm implies with not much more admin overhead than if you'd used docker.

Post reply on HN