Define and run multi-container applications with Docker
Go to file
Gary Rennie b06d37f885 Documentation: Include notes on mapping ports
When mapping ports as strings there is an issue with the way YAML parses
numbers in the format "xx:yy" where yy is less than 60 - this issue is
now included in the documentation.

This fixes #103
2014-03-03 13:37:15 +00:00
docs Documentation: Include notes on mapping ports 2014-03-03 13:37:15 +00:00
fig Merge pull request #120 from marksteve/link-name 2014-03-03 11:22:57 +00:00
script Exit deploy docs script on Fig error 2014-02-24 18:35:06 +00:00
tests Fix tests importing six 2014-03-03 12:25:38 +00:00
.gitignore Add /build to gitignore 2014-02-03 16:01:30 -08:00
.travis.yml Test Docker 0.8.0 on Travis 2014-02-07 10:35:18 -08:00
CHANGES.md Ship 0.2.2 2014-02-17 21:37:31 +00:00
Dockerfile Add basic Dockerfile 2014-01-16 17:28:47 +00:00
LICENSE Add license 2013-12-09 12:01:44 +00:00
MANIFEST.in remove tests from distribution build 2014-02-23 03:37:31 +01:00
README.md Documentation: Include notes on mapping ports 2014-03-03 13:37:15 +00:00
requirements-dev.txt Only install unittest2 on Python 2.6 2014-01-27 16:20:45 +00:00
requirements.txt Remove six from requirements 2014-03-03 12:08:38 +00:00
setup.py Update homepage in setup.py 2014-01-27 18:42:00 +00:00
tox.ini Added tox file 2014-01-06 17:58:49 +00:00

README.md

Fig

Build Status PyPI version

Fast, isolated development environments using Docker.

Define your app's environment with Docker so it can be reproduced anywhere:

FROM orchardup/python:2.7
ADD . /code
WORKDIR /code
RUN pip install -r requirements.txt
CMD python app.py

Define the services that make up your app so they can be run together in an isolated environment:

web:
  build: .
  links:
   - db
  ports:
   - "8000:8000"
   - "49100:22"
db:
  image: orchardup/postgresql

Note When mapping ports in the format HOST:CONTAINER you may experience erroneous results when using a container port lower than 60. This is due to YAML parsing numbers in the format "xx:yy" as sexagesimal (base 60) for this reason it is recommended to define your port mappings as strings.

(No more installing Postgres on your laptop!)

Then type fig up, and Fig will start and run your entire app:

example fig run

There are commands to:

  • start, stop and rebuild services
  • view the status of running services
  • tail running services' log output
  • run a one-off command on a service

Fig is a project from Orchard, a Docker hosting service. Follow us on Twitter to keep up to date with Fig and other Docker news.

Installation and documentation

Full documentation is available on Fig's website.

Running the test suite

$ script/test