3 ms·
I don't think people primarily choose Docker because it's more efficient(?) to deploy than a real server. The benefits of Docker, to me, are having a single ar
by keypusher 8y ago
I don't think people primarily choose Docker because it's more efficient(?) to deploy than a real server. The benefits of Docker, to me, are having a single artifact and reproducible builds where a developer can run the docker image locally, it then gets built once on Jenkins, and the same image is deployed to staging, production, etc. It eliminates an entire class of problems related to the operating system, installed dependencies, what language the application was written in, etc. That being said, those are also benefits when deploying, because everything is homogeneous at the deployment layer.
As far as constantly rebuilding and deploying things, we would be doing that anyway. We do dozens of deploys a day to push new code, that means building new images every time, if one of those deploys picks up a security fix that was recently merged upstream, great.
- hinkley 8y ago> having a single artifact and reproducible builds where a developer can run the docker image locally This is the key thing here. As a team grows it’s easy to get various kinds of learned helplessness. Docker, for its faults, is mostly simple enough that you can expect/insist that the team use it. Which means fewer kinds of surprises at deployment time.
- thawkins 8y agoWe enforced that by giving our devs linux workstations with no sudo rights (iso27001 requirement), but they have access to the docker daemon, and MUST install everything they need in docker images, its massively increased tools sharing between teams, and forced people to learn docker. We have some devs starting to use kubernetes locally using minikube .
- rehemiau 8y agoSorry for being off-topic but do you have any links or tips on how to achieve this? My understand was that adding a user to the 'docker' group gives him 'sudo'-equivalent rights.
- asfdsfggtfd 8y agoYou can set it up so that the user doesn't have to type sudo docker. But they still effectively have root access via docker. I guess it gives some social pressure not to do superuser things?
- de_watcher 8y agoIt looks like a package manager choice. Dpkg/Apt isn't doing by default what they actually need, so they use Docker instead.
- alexandre_m 8y agoYour devs can pass --privileged to docker run, that gives them root.
- zwischenzug 8y agoDepends who's doing the choosing. Where it takes months to provision a 'real' server, Docker saves an awful lot of time and effort. But most people choose Docker because it's well-known, well supported, and the experience outside corporate environments is a joy.
- merb 8y agodocker containers are not reproducible. if you built the same content on machine a and built the same content on machine b the hash of the image would differ. and the timestamp probably too
- hrcxxx 8y agoYes, but if you build the image and push it to a repository, everybody working on it can pull it and run it.