Getting Started With Skycap

Skycap is part of the new Cloud 66 product line. If you are using Cloud 66 for Docker, you will get all Skycap benefits without the need to switch to using Skycap.

What is Skycap?

Skycap is a container native CI/CD system. Using Skycap you can turn your source code into container (Docker) images automatically. There is nothing to install or download when using Skycap. All you need to your source code and a Cloud 66 account.

Getting Started

Skycap runs the CI/CD pipeline as a "stack". Each stack can contain an unlimited number of "services" that are built using Skycap. You can mix built services with pre-built images in a stack if some services in your application are using images from your own Docker image repository. Skycap doesn't do anything with these services but having them in the stack helps with describing your application better and more importantly it lets you deploy your whole application later using Maestro.

Overview & Prerequisites

Your Skycap stack 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. 

Why have pre-built images?

You might ask what's the point of adding pre-built images to a CI/CD pipeline? Aren't we using Skycap to build images from code in the first place? Adding services with pre-built images to your stack is not needed for building your services, but it does 2 things: 

  1. This way you describe your entire application under a stack.
  2. You can deploy this stack to your servers using Maestro later without any changes.

You can always add new services to a stack at a later time.

  • 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. If your Dockerfile is not in the root folder of your source code, you can specify the location or name in your service.yml configuration file using dockerfile_path element.

Building Images

Lets create a new Docker project.

If you're new to Cloud 66 from the dashboard click
Build a Docker Stack.

Build a new docker stack from an empty dashboard

If you have existing stacks from the sidebar
New Stack ► Docker (All Frameworks).

Build a new docker stack from the dashboard

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.

Build a new docker stack from the dashboard

Service provider drop-down

Build a new docker stack from the dashboard

  • 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.

Advanced Features

All of the information that defines how services are built is accessible from the service.yml file.

There is an advanced mode that allows you to edit this configuration file directly. This is useful for accessing advanced features. For example configuring multi-tenancy stacks.

Next: Getting Started with Cloud 66 Maestro →

Still need help? Contact Us Contact Us