Getting Started with Knative

Before you begin

Warning

Knative Quickstart Environments are for experimentation use only. For production installation, see our Administrator’s Guide

Before you can get started with a Knative Quickstart deployment you must install kind and the Kubernetes CLI.

Install Kind (Kubernetes in Docker)

You can use kind (Kubernetes in Docker) to run a local Kubernetes cluster with Docker container nodes.

Install the Kubernetes CLI

The Kubernetes CLI (kubectl), allows you to run commands against Kubernetes clusters. You can use kubectl to deploy applications, inspect and manage cluster resources, and view logs.

Install the Knative “Quickstart” environment

You can get started with a local deployment of Knative by using Knative on Kind (konk):

konk is a shell script that completes the following functions:

  1. Checks if you have kind installed, and creates a cluster called knative.
  2. Installs Knative Serving with Kourier as the default networking layer, and nip.io as the DNS.
  3. Installs Knative Eventing and creates an in-memory Broker and Channel implementation.

Install Knative and Kubernetes on a local Docker Daemon using konk

  1. curl -sL install.konk.dev | bash

Having issues with Kind?

We’ve found that some users (specifically Linux) may have trouble with Docker and, subsequently, Kind. Though this tutorial assumes you have KonK installed, you can easily follow along with a different installation.

We have provide an alternative Quickstart on minikube here: https://github.com/csantanapr/knative-minikube

Installing konk may take a few minutes. After the script is finished, check to make sure you have a Cluster called knative

Verify Installation

  1. kind get clusters

Install the Knative CLI

The Knative CLI (kn) provides a quick and easy interface for creating Knative resources, such as Knative Services and Event Sources, without the need to create or modify YAML files directly.

kn also simplifies completion of otherwise complex procedures such as autoscaling and traffic splitting.

Installing the kn CLI

Using Homebrew

For macOS, you can install kn by using Homebrew.

  1. brew install knative/client/kn

Using a binary

You can install kn by downloading the executable binary for your system and placing it in the system path.

A link to the latest stable binary release is available on the kn release page.

Using Go

  1. Check out the kn client repository:

    1. git clone https://github.com/knative/client.git
    2. cd client/
  2. Build an executable binary:

    1. hack/build.sh -f
  3. Move kn into your system path, and verify that kn commands are working properly. For example:

    1. kn version

Using a container image

Links to images are available here:

You can run kn from a container image. For example:

  1. docker run --rm -v "$HOME/.kube/config:/root/.kube/config" gcr.io/knative-releases/knative.dev/client/cmd/kn:latest service list

Note

Running kn from a container image does not place the binary on a permanent path. This procedure must be repeated each time you want to use kn.

Having issues upgrading kn?

If you are having issues upgrading using Homebrew, it may be due to a change to a CLI repository, where master branch was renamed to main. If so, run

  1. brew tap --repair
  2. brew update
  3. brew upgrade kn

to resolve the issue.