Testing multi-container applications with Docker Compose and Semaphore
Docker Compose is right at home in the continuous integration environment, given its ability to easily bootstrap your containers and their interconnectedness for testing and development purposes. This page will guide you through setting up and testing a simple, multi-container project on Semaphore.
After signing up for a Semaphore account, you’ll be ready to add your first project. To follow along, you can fork the GitHub repository used in this guide. As the repository is open-source, clicking on “Build Public Project” will pull a list of public projects from your connected repository host account, in this case from GitHub.
Choosing the repository will fetch its branches and take you to the branch selection page. This is where we choose the branch for our initial build. Other, pre-existing branches, can be added later on, and new branches will be added automatically by Semaphore.
A brief analysis will gather some information about your repository and show
you the platform selection screen. If the repository has a
docker-compose.yml, the Docker-enabled platform will be pre-selected.
Next, Semaphore will suggest some build commands. If needed, you can tailor them to your needs with the commands editor, or later on in Project Settings.
Clicking “Build” will kick off your first build. Now you can sit back, and let Semaphore do all the work. After a short while, you will be greeted with a successful build.
Testing images is great, but at some point you will also want to push them to your container registry. To learn how to do that on Semaphore, check out our guides about using and setting up container registries.