Live data from Hacker News

Docker for Mac with Kubernetes

docs.docker.com

71–80 of 169 posts

Re: Docker for Mac with Kubernetes

#71
post #58

Earlier quoted context omitted.

Using PXE (or, rather, iPXE) is the recommended deploy mode for container linux, that's why I mentioned it.

> Using PXE (or, rather, iPXE) is the recommended deploy mode for container linux Really? Is that a new thing? I don’t remember that last time I was reading the docs, but maybe I missed it (that it’s the “preferred” method rather than being just “an option”). Seems rather odd to limit your audience like that in the age of “cloud everything” as I think it’s generally more rare that folks fully control their layer 2, b…

Well, you can always still use the disk install, and instead mount the ignition config as elastic block storage read-only. That's what most people do in the cloud.

But in either case, you want the config to be centrally stored, so you can modify it without having to ssh onto every machine.

Re: Docker for Mac with Kubernetes

#73
post #50

Earlier quoted context omitted.

ingress is the most beautiful part of Swarm - it is built in. however, it does not do termination. You should trivially include a haproxy/nginx pod/service/vm to do the termination for you. One of the cool new infrastructure features is Docker Cloud - which allows you to "bring your own nodes" for 15$/node/month and setup Swarm. https://docs.docker.com/docker-cloud/cloud-swarm/using-swarm...

I'm using https://github.com/containous/traefik with Swarm for termination, Let's Encrypt and routing with success. Configuration is handled with service labels.

+1. Traefik is leaps and bounds more ergonomic than haproxy etc.

I believe it benched a bit worse than the comp but for most cases you're not going to run into issues.

Re: Docker for Mac with Kubernetes

#74
post #50

Earlier quoted context omitted.

ingress is the most beautiful part of Swarm - it is built in. however, it does not do termination. You should trivially include a haproxy/nginx pod/service/vm to do the termination for you. One of the cool new infrastructure features is Docker Cloud - which allows you to "bring your own nodes" for 15$/node/month and setup Swarm. https://docs.docker.com/docker-cloud/cloud-swarm/using-swarm...

I'm using https://github.com/containous/traefik with Swarm for termination, Let's Encrypt and routing with success. Configuration is handled with service labels.

Thanks for the shoutout. Would you happen to have a writeup on how to do that, or a few lines on whether it's Swarm-aware somehow? I guess it can't be too hard to figure out, but if there's something that will speed that up, that's better.

Re: Docker for Mac with Kubernetes

#75

Docker for Mac is not usable today, because of high cpu due IO [1] [1] https://github.com/docker/for-mac/issues/1759

Subscribed. Thanks for sharing this thread as Docker for Mac has always had performance issues for me too. Even when no containers are running I find it using significant resources all the time.

Re: Docker for Mac with Kubernetes

#76
post #59
post #49

Earlier quoted context omitted.

Doesn't that defeat the purpose of Docker? But anyway, thanks for the info :)

No, because the purpose of Docker is not 'to run XCode CLI tools'...

I think the GP means that the purpose of Docker is to provide containers, which are a substitute for VMs. If you are going to be running a VM anyway, why run a container?

Re: Docker for Mac with Kubernetes

#77

So confused by all the posts from people who say they run Swarm because kubernetes is too complicated or is only for huge deployments. I’ve had all sort of difficulties installing Docker. By hand it’s not trivial to get a secure install. Docker machine is great except it’s often broken. The Docker machine dev team is a tired, understaffed bunch that’s always playing a sisyphean whack-a-mole against dozens of cloud pr…

> Kubernetes on the other hand is trivial with GKE

How do I install GKE on my servers? ;)

> By hand it’s not trivial to get a secure install.

The default install (basically, adding a repo and apt-get install docker-ce on Debian and derivatives - trivial to automate with Ansible) is reasonably secure if you view Docker as a tool for packaging and task scheduling with some nice extras and don't buy the marketed isolation properties. It only listens for commands on a local socket, and permissions are sane. I haven't looked into Swarm mode protocol traffic, though but I don't think it's tweakable anyway.

> The myth that kubernetes is complicated is largely perpetuated by the same kind of people who say React is complicated: the people who’ve not tried it.

I've tried K8s. I've set up a test cluster, it worked, I wrote some YAML, it worked, all good. So I've worsened the conditions (explicitly going into "I want things to break" territory) and made it fail. I've researched how hard it is to diagnose the problem and fix it - it happened to be complicated. At least, for me. Just felt that "if something goes wrong here, I'll have bad time trying to fix it". Surely, this is not the case on GKE where you don't run and don't manage the cluster.

I had somewhat similar experience with Docker and Docker Swarm mode, and it was significantly easier to dive into the code, find out the relevant parts and see what's going on.

> difficult with Swarm, like TLS termination

YMMV, but I just add some labels to the service and Traefik does the rest. ;)

(But, yeah, Traefik with Swarm requires some reasonable but not exactly obvious networking logic. May take one deployment of "why I'm getting 504s?!" to figure it out. And Traefik needs access to manager nodes to work with built-in Swarm service discovery.)

Re: Docker for Mac with Kubernetes

#78

Earlier quoted context omitted.

That's the thing, we use k8s in production and I just used docker-compose for testing in my device environment for the sake of simplicity. Though over time it became not so simple to maintain two parallel config as the system grown up.

Helm makes this easy. It’s great, just use the templating features and not the package management stuff.

We found the same thing after the package management stuff caused issues in prod.

We rolled our own go program that just does go tpl substitution in yaml with overrides like helm. Works on charts out of the box, but instead of talking to a service, it outputs a yaml manifest ready to kubectl apply.

We've thought about open sourcing it. It took us literally a day to put together and had worked without flaw for 8 months in production.

Re: Docker for Mac with Kubernetes

#79

So confused by all the posts from people who say they run Swarm because kubernetes is too complicated or is only for huge deployments. I’ve had all sort of difficulties installing Docker. By hand it’s not trivial to get a secure install. Docker machine is great except it’s often broken. The Docker machine dev team is a tired, understaffed bunch that’s always playing a sisyphean whack-a-mole against dozens of cloud pr…

> Kubernetes on the other hand is trivial with GKE How do I install GKE on my servers? ;) > By hand it’s not trivial to get a secure install. The default install (basically, adding a repo and apt-get install docker-ce on Debian and derivatives - trivial to automate with Ansible) is reasonably secure if you view Docker as a tool for packaging and task scheduling with some nice extras and don't buy the marketed isolati…

Thanks for the reply.

I agree with what you say. I'm not tying to say people should all jump to k8s. Having options on the market is great.

But I was trying to refute the notion that Kubernetes has no advantages unless you're running a huge cluster. My main points where:

* It works great with 1 node.

* It comes with many features that Swarm does not have that are useful even at 1 node (PersistentVolumes, StatefulSets are biggest for me, though there are _many_ more I wouldn't want to go without anymore).

* Docker is not trivial to set up, either.

> How do I install GKE on my servers? ;)

Yes, of course. I was just saying there's a solid option to start exploring quickly.

> It only listens for commands on a local socket.

This is kind of a non-starter, isn't it? Of course it's easy to apt-get install docker, but then you want to control it remotely, right? Once you realize how nice it is to control Docker remotely, it's hard to imagine life before.

Re: Docker for Mac with Kubernetes

#80

Earlier quoted context omitted.

> Kubernetes on the other hand is trivial with GKE How do I install GKE on my servers? ;) > By hand it’s not trivial to get a secure install. The default install (basically, adding a repo and apt-get install docker-ce on Debian and derivatives - trivial to automate with Ansible) is reasonably secure if you view Docker as a tool for packaging and task scheduling with some nice extras and don't buy the marketed isolati…

Thanks for the reply. I agree with what you say. I'm not tying to say people should all jump to k8s. Having options on the market is great. But I was trying to refute the notion that Kubernetes has no advantages unless you're running a huge cluster. My main points where: * It works great with 1 node. * It comes with many features that Swarm does not have that are useful even at 1 node (PersistentVolumes, StatefulSets…

I appreciate where you’re coming from, but you can’t bring GKE into a conversation about the challenges of Kubernetes ops. GKE does everything for you.
Post reply on HN