layout: default
Each service defined in fig.yml must specify exactly one of image or build. Other keys are optional, and are analogous to their docker run command-line counterparts.
As with docker run, options specified in the Dockerfile (e.g. CMD, EXPOSE, VOLUME, ENV) are respected by default - you don't need to specify them again in fig.yml.
-- Tag or partial image ID. Can be local or remote - Fig will attempt to pull if it doesn't exist locally.
image: ubuntu
image: orchardup/postgresql
image: a4bc65fd
-- Path to a directory containing a Dockerfile. Fig will build and tag it with a generated name, and use that image thereafter.
build: /path/to/build/dir
-- Override the default command.
command: bundle exec thin -p 3000
-- Link to containers in another service (see "Communicating between containers").
links:
 - db
 - redis
-- Expose ports. Either specify both ports (HOST:CONTAINER), or just the container port (a random host port will be chosen).
ports:
 - 3000
 - 8000:8000
-- Map volumes from the host machine (HOST:CONTAINER).
volumes:
 - cache/:/tmp/cache
-- Add environment variables.
environment:
  RACK_ENV: development