DRAY:

Docker Workflow Engine

UNIX pipes for Docker

Download Dray from the Docker Hub

What Dray Does

Dray allows users to separate a workflow into discrete steps each to be handled by a single container. This isolation makes efficient use of compute resources and also allows workflows to be easily changed, extended or re-composed via this loosely coupled architecture.

  • Consumes description of the workflow to be executed
  • Starts containers in the correct order
  • Marshals data between each workflow step
  • Shuts down containers once their work is done
  • Monitors the execution & status of the workflow

Input.Dray receives a job description -- the list of Docker images to run along with any environment variables to be injected into those images.

Output.When all the steps of the job have completed, Dray saves the overall status of the job and makes it available via the rest API.

Dray starts the first container in the sequence and records in its output in order to pass it along to the next one in the chain. Once a container stops execution, Dray cleans it up.

Dray starts the next container and uses the output of the previous step as the input to the current one.

The remaining containers remained queued as Dray monitors the progress of the job.

Stay on the bleeding edge with the weekly CenturyLink Labs newsletter featuring Docker tutorials, news, jobs, and much more.