Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

As a noob I have a question as to what advantages I have using docker compared to just a service like Heroku where I just push the application to them... and I don't bother with docker?

To me with my limited understanding this seems like just another step.

Now granted when it comes to work, I'm using docker with specifics that I know why I would want / can specify with docker ... but for personal projects this ever comes up for me.

But otherwise for personal projects it just never comes up.

Yet on the other hand when it comes to various examples I see more and more that involve docker where, I'm not sure it needs to / what the advantage is.

Obviously there must be some strategic choices / advantages I'm missing.



The first obvious advantage is you can test your app locally in the exact same environment it will run, including any system dependencies and native modules. On any OS.


Heroku build packs only work on Heroku. Containers work everywhere and they support any linux application.


The first thing that comes to my mind is lock-in. if you push the application to Heroku and "it just works" then when you need to deploy it somewhere else you still have that hurdle to cross. Heroku's pricing adds up quickly.


... or you just deploy it on any VPS or bare metal with dokku installed: http://dokku.viewdocs.io/dokku/


Containers are great for packaging an app, ensuring dependencies will be met and avoiding lock-in.

You can use containers on Heroku, by the way.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: