Getting started with Skycap
Skycap is a Container Deployment Pipeline. You can use Skycap to automatically turn your source code into container (Docker) images, manage your Kubernetes configuration files and deploy your applications to any Kubernetes cluster.
What you’ll need
Before you start, please check you have the following:
A Cloud 66 Account — If you don’t already have one sign up for a Cloud 66 account. There’s a free community plan and you’ll get full unlimited access to all products free for 14 days.
A Git repository containing your application code — This can be a public or private repo. You can use any Git provider like GitHub / BitBucket or use your own privately hosted repo.
If you don't have images or code ready, you can use this simple "hello world" project we've supplied on Github. (You can also use this project with our next tutorial on Formations.)
What is a Build Pipeline?
Build pipelines are composed of all the individual (containerized) services that make up your application. Services can include raw source code that needs to be built into Docker images or pre-built images. You can mix and match these as required.
Build from Source — Your code should be hosted in a git repo. It should contain a Dockerfile that describes how to build your image. Cloud 66 provides Dockerfile templates for building common web frameworks. You can use these to help get started.
Pre-built Container Images — These can be hosted in any public image repo like Dockerhub or your own private repo.
Lets Get Started
New users should click start trial for the Skycap product. If you’re already using Cloud 66 just click New Application → Skycap (Build containers) button on the dashboard.
Give your application a Name — This will be used to label your application throughout the Cloud 66 dashboard.
Adding Services — You can add as many services as required by clicking the green + Add Service button at the bottom of the page.
Specifying the source of your images
The Where is your service image? dropdown provides you with three options to specify the source of your services.
Build Image from a GitHub repo — This is the easiest way to add services if your code is hosted on GitHub. You’ll need to link your GitHub account with Cloud 66 before you can take advantage of this. Just click the Setup access to your GitHub projects. link. (This is the option you should pick if you’re using our “hello world” app)
Build image from any 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 use this if you don’t want to link Cloud 66 to your GitHub account. You will need to add your Cloud 66 public key if your repo is private. You’ll be prompted to do this if it’s required.
It’s in a Docker image repository — 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 your services click the “Create Snapshot” button.
Snapshots and building images
A snapshot captures all the components of your application including application images, environment variables and configuration items, in preparation for deployment.
Because this is the first time you are creating a snapshot for this application, Skycap will fetch and build your code into images, as well as fetching any pre-built images.
All of these components are then stored in a private repository on your Cloud 66 account so that you can roll back easily at any time.
During the build process you can view the status of each individual build. You can also drill down into the logs if you need to troubleshoot any part of the process.
Deploying your application
Once you’ve built your images, you’re ready to deploy your app. There are two ways to do this:
Using Maestro - Cloud 66’s integrated container management service > Get started with Maestro.
Using your own (existing) Kubernetes cluster > Get started with Skycap Formations
Now that you have your first application defined, you can learn how to make that application live: