Live data from Hacker News

Weave – The Docker Network

github.com

11–20 of 65 posts

Re: Weave – The Docker Network

#11
This seems very nice. What would be the pros and cons of using Weave instead of Tinc ? I have used Tinc for a while[0] and, the end result looks very similar (i.e. there is not a nice command-line tool dedicated to use Tinc with Docker, but the high level description match).

[0]: https://gist.github.com/noteed/11031504

Re: Weave – The Docker Network

#12
post #8

Earlier quoted context omitted.

precisely because you're a developer you whould embrace docker with open arms. Because docker removes all the trouble of running applications that you need for your development: databases, application servers, queues... I love the fact that I can focus on my code and not on all those details that stole so much of my time.

I'd like to see a post/writeup (or even an essay!) on how to do the magic "backing services" ( http://12factor.net/backing-services ) with Docker. And that's where I find Deis and other Docker orchestration systems lacking very much. Sure, you can run MySQL in Docker, but it's a far cry from running it on native xfs with aligned partitions and whatever fancy you feel configuring. And since docker containers are very…

At the expensive of sounding like I'm just plugging my own company, this is what we're working on in the open-source project Flocker (https://github.com/ClusterHQ/flocker). We think that data-services like databases, queues and key-value stores, and anything else with state should be able to run inside docker containers too. Yes, you can already run a database in a docker container, but from an ops perspective, this is a nightmare and very far from what you want want to be able to do in a production system. Would love your feedback on what we're building and even more for you to get involved. Flocker is licensed under Apache 2.0, so feel free to get involved.

Re: Weave – The Docker Network

#13
This is really interesting. I've been looking for a way to build in support for networking between Docker hosts in my clocker.io software, to simplify deploying applications into a cloud hosted Docker environment. I'd been young with adding Open vSwitch, but am going to try weave as the network layer in the next release. Will there be any problems running in a cloud where I have limited control over the configuration of the host network interfaces and the traffic they can carry, such as AWS only allowing TCP and UDP between VMs?

Re: Weave – The Docker Network

#14
post #8

Earlier quoted context omitted.

precisely because you're a developer you whould embrace docker with open arms. Because docker removes all the trouble of running applications that you need for your development: databases, application servers, queues... I love the fact that I can focus on my code and not on all those details that stole so much of my time.

I'd like to see a post/writeup (or even an essay!) on how to do the magic "backing services" ( http://12factor.net/backing-services ) with Docker. And that's where I find Deis and other Docker orchestration systems lacking very much. Sure, you can run MySQL in Docker, but it's a far cry from running it on native xfs with aligned partitions and whatever fancy you feel configuring. And since docker containers are very…

Unfortunately I haven't read enough 12fa, but I know I can address most of your questions with one factoid: Volumes. You are absolutely right that Docker containers are meant to be disposable, and should not contain backing data. That is what Volumes are for. I haven't done enough with volumes to give you a real primer on the use of them, but volumes can run on whatever backing store you want and they are not so intertwined with the container that they would be deleted along with it.

It looks like volumes have evolved significantly since the feature was introduced, you might want these links, sorry I haven't reviewed them myself:

https://docs.docker.com/userguide/dockervolumes/

http://crosbymichael.com/advanced-docker-volumes.html

(I actually do keep my backing data in the containers, we have institutionalized backups where all of the important data is already kept in git anyway, so instance clones are in fact disposable for me even though they have all of the important backing data in them.)

Re: Weave – The Docker Network

#15
post #8

Earlier quoted context omitted.

precisely because you're a developer you whould embrace docker with open arms. Because docker removes all the trouble of running applications that you need for your development: databases, application servers, queues... I love the fact that I can focus on my code and not on all those details that stole so much of my time.

I'd like to see a post/writeup (or even an essay!) on how to do the magic "backing services" ( http://12factor.net/backing-services ) with Docker. And that's where I find Deis and other Docker orchestration systems lacking very much. Sure, you can run MySQL in Docker, but it's a far cry from running it on native xfs with aligned partitions and whatever fancy you feel configuring. And since docker containers are very…

Docker's design makes it incredibly easy --- or at least it makes it difficult to treat your backing services NOT like attached resources, therefore forcing you into some sort of 12factor-esque design. There's no magic to "backing services".

Re: Weave – The Docker Network

#16
post #10
post #8

Earlier quoted context omitted.

I'd like to see a post/writeup (or even an essay!) on how to do the magic "backing services" ( http://12factor.net/backing-services ) with Docker. And that's where I find Deis and other Docker orchestration systems lacking very much. Sure, you can run MySQL in Docker, but it's a far cry from running it on native xfs with aligned partitions and whatever fancy you feel configuring. And since docker containers are very…

Nothing is stopping you from running MySQL in Docker on native xfs with aligned partitions: bind-mount whatever partition you want into the container by defining a volume in Docker. This will be persistent, and will survive when you destroy the container. I use this to e.g. share a /home directory between a dozen experimental dev container I use to run my various projects - each container ensures I keep track of exac…

Am intrigued (and, again, showing my current early-stage understanding of LXCs), can you link the same data store container to multiple application containers? As in, have both a beta application and production application pulling data from the same core DB?

And do you simply define the container as a volume to ensure it stays persistent? That was the feeling I got from the docs, but again, might just be flagging how little I know at the minute...

Re: Weave – The Docker Network

#17
post #4

as someone who is more developer than ops, I feel like the docker stuff is still changing fast and that the way you would use docker today will be very different a year from now; but that containers seem to be the way of the future - if I have no pressing need to change my server architecture does it make sense to wait for things settle or would it be more beneficial to get in and learn now and experience the changes…

precisely because you're a developer you whould embrace docker with open arms. Because docker removes all the trouble of running applications that you need for your development: databases, application servers, queues... I love the fact that I can focus on my code and not on all those details that stole so much of my time.

So, basicaly, you're saying that you don't want to mess with that setup and use existing stuff... which you could achieve with everything as long as someone else do the setup for you. I don't see where Docker is better for a developper in this case... providing a vagrant box is exactly the same.

Re: Weave – The Docker Network

#18
post #17

Earlier quoted context omitted.

precisely because you're a developer you whould embrace docker with open arms. Because docker removes all the trouble of running applications that you need for your development: databases, application servers, queues... I love the fact that I can focus on my code and not on all those details that stole so much of my time.

So, basicaly, you're saying that you don't want to mess with that setup and use existing stuff... which you could achieve with everything as long as someone else do the setup for you. I don't see where Docker is better for a developper in this case... providing a vagrant box is exactly the same.

Startup time for a docker container is way way faster than a VM. Also, you could run the exact binary state of production, which is helpful if you run into "works on my machine" types of problems.

Re: Weave – The Docker Network

#19
post #11

This seems very nice. What would be the pros and cons of using Weave instead of Tinc ? I have used Tinc for a while[0] and, the end result looks very similar (i.e. there is not a nice command-line tool dedicated to use Tinc with Docker, but the high level description match). [0]: https://gist.github.com/noteed/11031504

Just having a look at Tinc.. one difference is completely non-technical - Tinc is GPL but Weave is Apache licensed so aligns better with the whole Docker ecosystem. More comments to come.
Post reply on HN