Live data from Hacker News

Fig: Fast, isolated development environments using Docker

orchardup.github.io

11–20 of 45 posts

Re: Fig: Fast, isolated development environments using Docker

#12

Is this meant to be a next-generation Vagrant? What advantages does it have over vagrant-lxc?

Well if you are on OSX these will run inside of a vagrant machine since OSX isn't supported yet. (docker-osx runs vagrant for you)

Docker isn't supposed to replace vagrant, its supposed to supplement it, at least with development machines.

Re: Fig: Fast, isolated development environments using Docker

#14

Can anyone explain, in a nutshell, what features this tool provides beyond just using Docker itself?

I've been trying to learn Docker and one of the things that has tripped me up is figuring out how to connect the different pieces and the mechanics of a deployment. Like, I need some process to reliably set up the DB container, create a user account on the DB, import some SQL... and then run the Web container, link it to the DB container, feed it the DB credentials, and so on.

I'm not sure fig totally solves this, but I'm pretty sure it's in the ballpark.

Re: Fig: Fast, isolated development environments using Docker

#15
post #2

I'd love to use this .. but who has time to learn yet another configuration and provisioning management tool? I mean, I can make the time - and will - but since this is just another docker management tool, lets use this moment to pick on it, a little bit.. What this needs is the ability to be pointed at a working VM - lets say, Ubuntu 13.10 server - and then just figure out whats different about it, compared to the d…

I don't have a ton of experience with any of them, but fig.yaml looks dramatically simpler and easier to learn than Chef or Puppet. (It also solves a much narrower problem, but I think the point remains.)

What this needs is the ability to be pointed at a working VM - lets say, Ubuntu 13.10 server - and then just figure out whats different about it, compared to the distro release.

It sounds like you want Blueprint (https://github.com/devstructure/blueprint). But careful what you ask for... I found this to not actually be a very useful approach in practice.

Re: Fig: Fast, isolated development environments using Docker

#16

Is this meant to be a next-generation Vagrant? What advantages does it have over vagrant-lxc?

Well if you are on OSX these will run inside of a vagrant machine since OSX isn't supported yet. (docker-osx runs vagrant for you) Docker isn't supposed to replace vagrant, its supposed to supplement it, at least with development machines.

There's also Boot2Docker which I've been using on OSX - https://github.com/steeve/boot2docker.

Re: Fig: Fast, isolated development environments using Docker

#17
post #10
post #2

I'd love to use this .. but who has time to learn yet another configuration and provisioning management tool? I mean, I can make the time - and will - but since this is just another docker management tool, lets use this moment to pick on it, a little bit.. What this needs is the ability to be pointed at a working VM - lets say, Ubuntu 13.10 server - and then just figure out whats different about it, compared to the d…

When I first looked at the Dockerfile format, my thought was, hey, another provisioning file format to learn. I guess you could just call chef/puppet/ansible/etc in your Dockerfile and call it a day though? I have not heavily used any of these tools so my perception of their overlap might be off.

I've tried this and it is not that easy, docker containers are meant to run one and only one process. So, for instance my puppet started an upstart job, and this crashes the docker build process.

I'm a docker newbie, though.

Re: Fig: Fast, isolated development environments using Docker

#18
post #10
post #2

I'd love to use this .. but who has time to learn yet another configuration and provisioning management tool? I mean, I can make the time - and will - but since this is just another docker management tool, lets use this moment to pick on it, a little bit.. What this needs is the ability to be pointed at a working VM - lets say, Ubuntu 13.10 server - and then just figure out whats different about it, compared to the d…

When I first looked at the Dockerfile format, my thought was, hey, another provisioning file format to learn. I guess you could just call chef/puppet/ansible/etc in your Dockerfile and call it a day though? I have not heavily used any of these tools so my perception of their overlap might be off.

I did exactly that with Puppet as an experiment: http://kartar.net/2013/12/building-puppet-apps-inside-docker.... Works reasonably well. I will say though that the Dockerfile syntax is, IMHO, much easier to use than Puppet/Chef/etc.

Disclaimer: I work at Docker and previously worked at Puppet Labs.

Re: Fig: Fast, isolated development environments using Docker

#20

Is this meant to be a next-generation Vagrant? What advantages does it have over vagrant-lxc?

A few things:

- System configuration is managed for you using Docker (you don't need to figure out how to hook up Puppet/Chef/shell scripts)

- You can aggregate log output from all of your containers

- You can model your application as a collection of services - starting, stopping, scaling them etc

- You can ship exactly the same Docker image you use in development to production

More importantly, all this stuff works out of the box by default. Some of these things are possible with Vagrant, but you need to learn and piece together other tools (Puppet, Foreman, etc) to get it all working.

Post reply on HN