Start and manage multiple containers with Triton Compose

Modified: 13 Jul 2017 16:37 UTC

Docker Compose is a tool for defining and running applications with multiple containers. A docker-compose.yml file configures the application services. Triton Compose is the version of Docker Compose which you can use to scale or start applications on Triton.

Instead of using triton-docker run three, four, or five times in order to start containers or scale your application, a Compose file does the hard work for you. On Triton, your containers will run on different physical servers across the cloud.

Triton Compose in action

Watch the screencast

Docker Compose makes it easy to deploy rolling changes to your application and give your users a seemless experience. As long as you have more than one instance running, you can update your application with no downtime.

Watch the video to learn more.

Examples

We built an Autopilot Pattern WordPress application which uses Compose to spin up several different containers including WordPress, Nginx, MySQL, and more. The application is infinitely easier scale with Compose. Instead of having to use triton-docker run with every different container to spin up a new instance, you can run triton-compose scale with the name of the instance and the number of instances you want to exist.

If we decided to scale WordPress, Nginx, and MySQL, the command would look like this:

$ triton-compose scale wordpress=3 nginx=3 mysql=3

Scaling back down is the same command, just with fewer instances—for the above example, that could look like triton-compose scale wordpress=2 nginx=2 mysql=2.

Here are some other examples of projects using Docker Compose:

Docker Compose file syntax

While we technically support any version of the Docker Compose syntax, we don't support all the options of every version.

By default, version 1 is the most compatible. Versions 2 and above require network_mode: bridge as shown in our MySQL Autopilot Pattern compose file.