Install Knative using quickstart

    Warning

    Knative quickstart environments are for experimentation use only. For a production ready installation, see the or the Knative Operator installation.

    Before you can get started with a Knative quickstart deployment you must install:

    • (Kubernetes in Docker) or minikube to enable you to run a local Kubernetes cluster with Docker container nodes.

    • The to run commands against Kubernetes clusters. You can use kubectl to deploy applications, inspect and manage cluster resources, and view logs.

    • The Knative CLI (kn). For instructions, see the next section.

    • You need to have a minimum of 3 CPUs and 3 GB of RAM available for the cluster to be created.

    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.

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

    Using HomebrewUsing a binaryUsing GoUsing a container image

    Do one of the following:

    • To install kn by using , run the command (Use brew upgrade instead if you are upgrading from a previous version):

      Having issues upgrading kn using Homebrew?

      If you are having issues upgrading using Homebrew, it might be due to a change to a CLI repository where the master branch was renamed to main. Resolve this issue by running the command:

      1. brew uninstall kn
      2. brew untap knative/client --force
      3. brew install knative/client/kn

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

    1. Download the binary for your system from the kn release page.

    2. Rename the binary to kn and make it executable by running the commands:

      1. mv <path-to-binary-file> kn
      2. chmod +x kn
    3. Move the executable binary file to a directory on your PATH by running the command:

      1. mv kn /usr/local/bin
    4. Check out the kn client repository:

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

    6. Move kn into your system path, and verify that kn commands are working properly. For example:

      1. kn version

    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.

    To get started, install the Knative quickstart plugin:

    Using HomebrewUsing a binaryUsing Go

    Do one of the following:

    • To install the quickstart plugin by using , run the command (Use brew upgrade instead if you are upgrading from a previous version):

      1. brew install knative-sandbox/kn-plugins/quickstart
    1. Download the binary for your system from the quickstart release page.

    2. Rename the file to remove the OS and architecture information. For example, rename kn-quickstart-amd64 to kn-quickstart.

    3. Make the plugin executable. For example, chmod +x kn-quickstart.

    4. Move the executable binary file to a directory on your PATH, for example, in .

      1. kn quickstart --help
    5. Check out the kn-plugin-quickstart repository:

      1. git clone https://github.com/knative-sandbox/kn-plugin-quickstart.git
    6. Build an executable binary:

    7. Move the executable binary file to a directory on your PATH:

      1. mv kn-quickstart /usr/local/bin
    8. Verify that the plugin is working by running the command:

      1. kn quickstart --help

    The quickstart plugin completes the following functions:

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

    To get a local deployment of Knative, run the quickstart plugin:

    Using kindUsing minikube

    1. Install Knative and Kubernetes using kind by running:

      1. kn quickstart kind
    2. After the plugin is finished, verify you have a cluster called knative:

      1. kind get clusters
    3. Install Knative and Kubernetes in a instance by running:

      Note

      The minikube cluster will be created with 6 GB of RAM. If you don’t have enough memory, you can change to a different value not lower than 3 GB by running the command minikube config set memory 3078 before this command.

      1. kn quickstart minikube
    4. The output of the previous command asked you to run minikube tunnel. Run the following command to start the process in a secondary terminal window, then return to the primary window and press enter to continue:

      The tunnel must continue to run in a terminal window any time you are using your Knative quickstart environment.

      The tunnel command is required because it allows your cluster to access Knative ingress service as a LoadBalancer from your host computer.

      Note

      To terminate the tunnel process and clean up network routes, enter Ctrl-C. For more information about the minikube tunnel command, see the minikube documentation.

      1. minikube profile list