Hacker News new | ask | show | jobs
by hippiefahrzeug 4270 days ago
One thing I'd like to point out are OS upgrades, security patches or generally package updates. With docker I just rebuild a new image using the latest ubuntu image (they are updated very frequently), deploy the app, test and then push the new image to production. Upgrading the host OS also is much less of a problem because far fewer packages are installed (i.e. it's just docker and the base install).
2 comments

But then you have many more docker images for different kinds of services that you all have to rebuild, no? Or do you just have one docker image?

And out of curiosity: is your testing of new images automated?

We have many images, and we build them in a CI setup using jenkins. I used to run jenkins inside docker and build images within that docker, but this turned out to be a problem. (Mainly more and more resources were used up until the disk was full.) Now it's just jenkins installed on the host building images, starting them and run integration tests.
This still doesn't say what you are doing. You update the base image, which is presumably something every Docker user does, then you "deploy the app".

What are you deploying? How much heavy lifting is your dockerfile doing? How much of the environment do you have to setup manually? How do you supply the app its static and dynamic data? How do you make the app accessible to users? How are you handling availability if your app crashes? Is the app distributed or load balanced in any way?

I'm not sure why I need to tell you all this. :) I was replying to "What are some problems that get solved better when using Docker?".