docs/docs/snippets/install-kn.md

93 lines
2.8 KiB
Markdown

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 Homebrew"
Do one of the following:
- To install `kn` by using [Homebrew](https://brew.sh){target=_blank}, run the command:
```bash
brew install kn
```
- To upgrade an existing `kn` install to the latest version, run the command:
```bash
brew upgrade kn
```
??? bug "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:
```bash
brew tap --repair
brew update
brew upgrade kn
```
=== "Using a binary"
You can install `kn` by downloading the executable binary for your system and placing it in the system path. Note that you will need `kn` v0.25 or later.
1. Download the binary for your system from the [`kn` release page](https://github.com/knative/client/releases){target=_blank}.
1. Rename the binary to `kn` and make it executable by running the commands:
```bash
mv <path-to-binary-file> kn
chmod +x kn
```
Where `<path-to-binary-file>` is the path to the binary file you downloaded in the previous step, for example, `kn-darwin-amd64` or `kn-linux-amd64`.
1. Move the executable binary file to a directory on your PATH by running the command:
```bash
mv kn /usr/local/bin
```
1. Verify that the plugin is working by running the command:
```bash
kn version
```
=== "Using Go"
1. Check out the `kn` client repository:
```bash
git clone https://github.com/knative/client.git
cd client/
```
1. Build an executable binary:
```bash
hack/build.sh -f
```
1. Move `kn` into your system path, and verify that `kn` commands are working properly. For example:
```bash
kn version
```
=== "Using a container image"
Links to images are available here:
- [Latest release](https://gcr.io/knative-releases/knative.dev/client/cmd/kn){target=_blank}
You can run `kn` from a container image. For example:
```bash
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`.