Live data from Hacker News

Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

news.ycombinator.com

71–80 of 116 posts

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#71
post #20

I deploy on bare metal. Docker, Kubernetes, et. al add layers of complexity that I don't need. I'm not saying that they don't have benefits at a certain scale, but for the types of single-server deployments I do, I have not been convinced.

this. just a simple rsync and docker-compose up can be all you need in most cases.

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#72
we use Nomad[0], we pretty much use Hashicorp's entire stack (consul, vault and nomad). Vault has been fabulous for secret(s), authentication, etc. Consul for service discovery and Nomad for job running/deployment. We have a mix of static binaries that we run and docker containers. Most of our new stuff is all docker containers. We use Jenkins as our CI/CD, that just run nomad jobs and confirm their successful deployment.

Cost management is easy, all the projects are open-source and since we can spin Nomad up against any cloud provider or internal machine hosts, depending on what's the cheapest at the time. It's pretty easy to wrap your head around Nomad and make it do what you need.

0: https://www.nomadproject.io/

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#74
https://cloud.docker.com/

Surprised it wasn't already in the long list of suggestions. Have been using the tool when it was called Tutum. The guys behind Docker bought Tutum and renamed it to Docker Cloud. It's currently set up to redeploy services when I push an image to my repositories. Really loving the simplicity, even tough it's got some quirks.

You can now link your bitbucket or github repositories. Let it build your containers and deploy it to production. This way you can build an easy CI/CD pipeline.

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#75
post #14

Openshift is essentially Kubernetes + Redhat Extensions + Redhat Support I use Gitlab CI and helm[1] for deploying. The last step of the ci process checks out the helm chart which is just another git repo and executes a helm install/upgrade CHART-NAME. Making things accessible is done through kubernetes ingress with nginx[2](which includes getting let's encrypt automatically for all external endpoints) so when I want…

Hi, nice, this is a lot similar to our initial approach. Glad to see that! To make this flow a bit more easier, we've created a tool [1] (apologies for the plug) that is on top of Helm. What it does, is taking a diff between a bunch of Chart references with values (the desired state) and what's currently in Kubernetes (the actual state), and perform a few create/updates/deletes. So for instance you don't have to add an explicit helm delete if you remove a component, instead just remove it from the desired state. In our day to day work we add and update tons of components through this system, only updating .yaml files, checking them into Git and have the CI/CD do all the work. Also our tool has a dry-run mode, which acts like a test stage for pull requests.

[1]: https://github.com/Eneco/landscaper

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#76
post #16

This is a great question and something we've been trying to figure out ourselves. Historically, we were using Ansible to deploy Docker containers to EC2 instances, but have moved some services over to Kubernetes, Swarm and Lambda/Serverless. All of these are create the same deployment challenges -- the current products out there don't fit perfectly. The more we want to deploy to a higher level than "just Docker", the…

Would you mind expanding on why you're using both K8s and Swarm?

We don't use both in the same product. Currently we have a product deployed on k8s and a different one on swarm (well, 1.12 swarm mode, not the original swarm). We won't keep it this way forever, but we've definitely learned a lot about managing each in a production environment while running this way.

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#78
post #4

I used to use Marathon on Mesos for deploying Docker containers, and orchestrated it via a hacked together Jenkins cluster, which worked well but took a lot of configuration and was somewhat brittle. I moved to Kubernetes about 6 months ago and have been really enjoying it. My first production cluster was hand rolled on AWS, where I found the cloud-provider load balancer integrations extremely helpful ( https://kuber…

[deleted]

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#79
post #17

I can recommend Rancher. I’ve used Openshift, Kubernetes and Rancher - so far, Rancher has been the best experience. http://rancher.com/

We're migrating to Rancher from a mix of Jenkins tasks and manual deploys on AWS machines (ie: a mess) and the product is great. I've evaluated both DCOS and k8s about 7-8 months ago and found a k8s a bit complex and moving really fast (we're a small ops team so we can't spend too much time browsing documentation and keeping up with the latest way of doing things). I didn't like DCOS for various reasons (it seemed less mature and the community was too small.)

Rancher is also a breeze to deploy, I could manually deploy it with one hand tied behind my back in 10mn on AWS.

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#80

In a team where Node and Golang were the language of choice, we used GitHub private repos for code, TeamCity as the driver for CI/CD and Salt to deploy the Docker images to our different environments running on AWS EC2 instances. I must say I really liked TeamCity and its different integrations with GitHub, build processes (Node/NPM, frontend tooling, ..) and how variables could be shared down with project and releas…

As long as your apps run well in containers (Docker or Rkt or others even), they can run and work well on K8s, which also runs well on AWS. You should consider K8s to replace imperative CM-based (Salt/Ansible) deployment mechanisms. The native pod abstraction in K8s can also nicely address multi-container composition issue you mentioned.
Post reply on HN