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>
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
- Click on Build & Deploy in the right-hand panel
- Scroll down your timeline until you find the build in question (your builds are all in the left column)
- Click on the Deploy Log link
You will now see the full historical log of the build process, including the final URL of the image that resulted. You can filter the log by server, service name and pod name.
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.netand 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