Fig: Fast, isolated development environments using Docker
We've open-sourced a tool that uses Docker to run your development environments with their dependencies automatically fetched and cleanly isolated. We're using it to develop Orchard, and loving it. It's called Fig.
Fig is both a lightweight Vagrant and a next-level Foreman. Like Foreman, it runs your app's services and aggregates their log output in one place; like Vagrant, it makes your environment isolated and repeatable—and it runs your whole app, including the database.
To use it, write a
fig.yml which describes how to build or retrieve each service's Docker image:
web: build: . links: - db ports: - 8000:8000 db: image: orchardup/postgresql
fig up, and your app is running:
You can also run one-off commands with
fig run, set container options and do a whole lot more—see the docs for the lowdown.
Sick of manually setting up your environment for every new project, juggling multiple versions of all your databases, libraries and language interpreters? Give Fig a try, but be warned: it's hard to go back to developing normally afterwards.