4 ms·
I have zero problem with a hybrid setup. I'm not running Docker just for the sake of running Docker. I'm running Docker (specifically Dokku) because it drastic
by Benjamin_Dobell 11y ago
I have zero problem with a hybrid setup. I'm not running Docker just for the sake of running Docker.
I'm running Docker (specifically Dokku) because it drastically simplifies deploying new builds, and graduating those builds between environments.
I know a large part of this article was that Docker complicates rather than simplifies the situation. I guess if you're trying to be a Docker purist (for no reason) then sure. The same is generally true if you try be a purist of any kind.
- gsharma 11y agoIf the goal is to simplify deployment process, why not use something like Capistrano or Fabric? You can run 'Cap deploy <dev|prod>'
- Benjamin_Dobell 11y agoBecause, as mentioned, I already deploy in one line: git push deploy/uat and I didn't have to write a single deployment script to achieve it. Plus, by using Dokku I get the benefits of containerised apps.
- simplify 11y agoWhat are the benefits of containerised apps in your case?
- IgorPartola 11y agoFabric is a great tool at first, but the problem is that it's always procedural. Want a deploy script? Write it. No other way around that. Something that's more declarative is definitely superior. Why? Because it will be shorter and easier to debug. I am not a fan of `git push` as a deployment strategy (because git is a version control tool, not a deployment tool), but it does force you to create and use a system that's by definition declarative. This is why I use dokku for my new projects.
- istvan__ 11y agoI think the deployment is the weakest point of the Docker ecosystem. The reason why I am using Docker is the forced honesty on the environment side, if your app runs on your laptop it does not mean it will run on the production boxes. If the Docker container runs on your laptop it gives you higher confidence that it will run on the production infra. No missing JARs, environment variables, misconfigured classpaths, etc.