Build & Config
Understanding BuildGrid
Overview
BuildGrid is Cloud 66’s integrated Docker image builder and repository. Every time you build your images for a Cloud 66 application, we store a copy of those images in BuildGrid. You can access these images using your Dashboard, or by logging into BuildGrid directly.
Understanding BuildGrid URLs
Every successful build process in Cloud 66 adds an image to BuildGrid. You can see find URL for an image by clicking on a service name and then on the Image URL. Each image in your BuildGrid repository has the following structure:
subdomain.buildgrid.net/<namespace>/<app name in cloud 66>.<git repo name>:<hash of commit>
For example:
registry-z2.buildgrid.net/minstrel/qq-container-demo.github-com-cloud66-container-demo:d6caxd98d23f932d-2064bdad0fac555
Finding image details via Build & Deployment Timeline
You can see details of older images from your builds using the Build & Deployment Timeline. To do this open your Application from your Cloud 66 Dashboard and scroll down your timeline until you find the build in question (your builds are all in the left column)
Each deployment event lists the code branch that was deployed, and the ID of the image that was created.
To see a log of the build process, click on the Application Deployed link for that build. Within the log you'll find all the details of the image.
Accessing your BuildGrid repository
You can access your repository directly using any Docker-compatible client, but you will need your BuildGrid username and password (which are different from your Cloud 66 username and password). You can find them under Settings → BuildGrid Settings.
For example using the standard Docker terminal client you can:
- Log into BuildGrid by running
docker login <subdomain>.buildgrid.net
and then supplying your username and password when prompted - Pull any image from your repo using
docker pull <full image URL>
BuildGrid is read-only
You cannot push images to BuildGrid - it is designed to be read-only. To update an image in BuildGrid you should update your code via Cloud 66 and a new version of the image will be built and stored accordingly.
Running an image locally
Once you have pulled an image to your local machine, you can run it locally. In order to do so you will need:
- A Docker client (including the CLI)
- A Kubernetes client (such as minikube)
- The kubectl CLI
- A working knowledge of basic Docker and Kubernetes CLI commands
You can then either run the image directly from Docker using the docker run
command (more help here) or you can configure a local Kubernetes instance (see this guide for more info).