Docker Getting Started (Building Images)
Overview & Prerequisites
The process of building a Docker stack is split into two distinct parts. First, you build images for your services, then once you're ready you setup a deployment.
Your project can be composed of services that use pre-built images or source code you want to build into images. You can mix and match these as required.
Pre-built Docker Images — Can be hosted in an image repo like Dockerhub or in your own private repository.
Build from Source — Your code should be hosted in a git repo and contain a Dockerfile located in the root directory. We provide basic Dockerfile templates for building common web frameworks that you can use to get started.
Lets create a new Docker project.
Adding Docker Services
Give the project a name, then you can add services. You can add as many services as required by clicking the green Add Another Service link at the bottom of the page.
Service provider drop-down
I'm using a GitHub Repo — This is the easiest way to add services from GitHub repos. You will need to link your GitHub account with Cloud 66 before you can take advantage of this. You can do this by clicking the Lets link with GitHub now link that will appear if you haven't signed up to Cloud 66 with GitHub.
I'm using a manual Git Repo — Use this option if you have a private git repo or you're using another git provider such as BitBucket. You can also choose this if you don't want to link Cloud 66 to your GitHub account. You will need to add and approve the Cloud 66 public key if your repo is private. You'll be prompted to do this if required.
It's a Docker Image — Use this to add pre-built images to a project. You can use a service like DockerHub or your own private image repo. If you're using a private repository you'll be prompted to add the necessary login credentials.
Once you've finished adding services click Start Build.
Build Process (BuildGrid)
BuildGrid is the Cloud 66 image building service that is used to build Docker images for your services directly from your git code repository.
During the build process you can view the status of each individual image build and drill down into the logs if you need to troubleshoot any part of the process.
All of the information that defines how services are built is accessible from the services.yml file.