From 15488da77fff08facd2084283f48ce2663ba2b4c Mon Sep 17 00:00:00 2001 From: Sam O'Dell <31352624+samodell@users.noreply.github.com> Date: Thu, 18 Apr 2019 12:59:26 -0700 Subject: [PATCH] Add label install to guides, update Minikube (#1195) * Add label install to guides, update Minikube * -l to --selector * Update wording for install * plug-ins to plugins (remove hyphen) --- docs/install/Knative-custom-install.md | 52 ++++++++++---- docs/install/Knative-with-AKS.md | 24 +++++-- docs/install/Knative-with-GKE.md | 24 +++++-- docs/install/Knative-with-Gardener.md | 24 +++++-- docs/install/Knative-with-IKS.md | 24 +++++-- docs/install/Knative-with-Minikube.md | 95 +++++++++++++++----------- docs/install/Knative-with-Minishift.md | 9 +-- docs/install/Knative-with-PKS.md | 24 +++++-- docs/install/Knative-with-any-k8s.md | 24 +++++-- docs/install/README.md | 4 +- 10 files changed, 203 insertions(+), 101 deletions(-) diff --git a/docs/install/Knative-custom-install.md b/docs/install/Knative-custom-install.md index a18b712bc..547c90947 100644 --- a/docs/install/Knative-custom-install.md +++ b/docs/install/Knative-custom-install.md @@ -226,7 +226,7 @@ files from the Knative repositories: _\*_ See [Installing logging, metrics, and traces](../serving/installing-logging-metrics-traces.md) -for details about installing the various supported observability plug-ins. +for details about installing the various supported observability plugins. † These are the recommended standard install files suitable for most use cases. @@ -304,23 +304,27 @@ commands below. completed until the upgrade process finishes. 1. To install Knative components or plugins, specify the filenames in the - `kubectl apply` command: - - - To install an individual component or plgugin + `kubectl apply` command. To prevent install failures due to race conditions, + run the install command first with the `-l knative.dev/crd-install=true` flag, + then a second time without the selector flag. This installs the CRDs first: ```bash - kubectl apply --filename [FILE_URL] + kubectl apply --selector knative.dev/crd-install=true \ + --filename [FILE_URL] \ + --filename [FILE_URL] ``` - - To install multiple components or plugins, append additional - `--filename [FILENAME]` flags to the `kubectl apply` command: + - Then run the `kubectl apply` command again without the `-l` flag to + complete the install: ```bash - kubectl apply --filename [FILE_URL] --filename [FILE_URL] \ - --filename [FILE_URL] + kubectl apply --filename [FILE_URL] \ + --filename [FILE_URL] ``` - where [`FILE_URL`] is the URL path of the desired Knative release: + You can add as many `--filename [FILE_URL]` as needed. + + [`FILE_URL`] is the URL path of the desired Knative release: `https://github.com/knative/[COMPONENT]/releases/download/[VERSION]/[FILENAME].yaml` @@ -335,7 +339,16 @@ commands below. **Example install commands:** - To install the Knative Serving component with the set of observability - plug-ins: + plugins, enter the following command. The `--selector` flag + installs the CRDs first: + + ```bash + kubectl apply --selector knative.dev/crd-install=true \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/monitoring.yaml + ``` + Then complete the install by running the command again, this time without + `--selector knative.dev/crd-install=true`: ```bash kubectl apply --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ @@ -343,7 +356,20 @@ commands below. ``` * To install all three Knative components and the set of Eventing sources - without an observability plugin: + without an observability plugin, enter the following command. The + `--selector` flag installs the CRDs first: + + ```bash + kubectl apply --selector knative.dev/crd-install=true \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ + --filename https://github.com/knative/build/releases/download/v0.5.0/build.yaml \ + --filename https://github.com/knative/eventing/releases/download/v0.5.0/release.yaml \ + --filename https://github.com/knative/eventing-sources/releases/download/v0.5.0/eventing-sources.yaml \ + --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml + ``` + + Then complete the install by running the command again, this time without + `--selector knative.dev/crd-install=true`: ```bash kubectl apply --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ @@ -377,7 +403,7 @@ commands below. See [Installing logging, metrics, and traces](../serving/installing-logging-metrics-traces.md) - for details about setting up the various supported observability plug-ins. + for details about setting up the various supported observability plugins. You are now ready to deploy an app, run a build, or start sending and receiving events in your Knative cluster. diff --git a/docs/install/Knative-with-AKS.md b/docs/install/Knative-with-AKS.md index d76704f28..7b6f4e1a1 100644 --- a/docs/install/Knative-with-AKS.md +++ b/docs/install/Knative-with-AKS.md @@ -194,7 +194,23 @@ your Knative installation, see prevent modifications to Eventing Source resources, those changes will not be completed until the upgrade process finishes. -1. Run the `kubectl apply` command to install Knative and its dependencies: +1. To install Knative, first install the CRDs by running the `kubectl apply` + command once with the `-l knative.dev/crd-install=true` flag. This prevents + race conditions during the install, which cause intermittent errors: + + ```bash + kubectl apply --selector knative.dev/crd-install=true \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ + --filename https://github.com/knative/build/releases/download/v0.5.0/build.yaml \ + --filename https://github.com/knative/eventing/releases/download/v0.5.0/release.yaml \ + --filename https://github.com/knative/eventing-sources/releases/download/v0.5.0/eventing-sources.yaml \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/monitoring.yaml \ + --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml + ``` + +1. To complete the install of Knative and its dependencies, run the + `kubectl apply` command again, this time without the `--selector` + flag, to complete the install of Knative and its dependencies: ```bash kubectl apply --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ @@ -205,12 +221,6 @@ your Knative installation, see --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml ``` - > **Note**: If your install fails on the first attempt, try rerunning the - > commands. They will likely succeed on the second attempt. For background - > info and to track the upcoming solution to this problem, see issues - > [#968](https://github.com/knative/docs/issues/968) and - > [#1036](https://github.com/knative/docs/issues/1036). - > **Note**: For the v0.4.0 release and newer, the `clusterrole.yaml` file is > required to enable the Build and Serving components to interact with each > other. diff --git a/docs/install/Knative-with-GKE.md b/docs/install/Knative-with-GKE.md index 7cbff0a73..689941553 100644 --- a/docs/install/Knative-with-GKE.md +++ b/docs/install/Knative-with-GKE.md @@ -204,7 +204,23 @@ see [Performing a Custom Knative Installation](./Knative-custom-install.md). prevent modifications to Eventing Source resources, those changes will not be completed until the upgrade process finishes. -1. Run the `kubectl apply` command to install Knative and its dependencies: +1. To install Knative, first install the CRDs by running the `kubectl apply` + command once with the `-l knative.dev/crd-install=true` flag. This prevents + race conditions during the install, which cause intermittent errors: + + ```bash + kubectl apply --selector knative.dev/crd-install=true \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ + --filename https://github.com/knative/build/releases/download/v0.5.0/build.yaml \ + --filename https://github.com/knative/eventing/releases/download/v0.5.0/release.yaml \ + --filename https://github.com/knative/eventing-sources/releases/download/v0.5.0/eventing-sources.yaml \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/monitoring.yaml \ + --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml + ``` + +1. To complete the install of Knative and its dependencies, run the + `kubectl apply` command again, this time without the `--selector` + flag, to complete the install of Knative and its dependencies: ```bash kubectl apply --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ @@ -215,12 +231,6 @@ see [Performing a Custom Knative Installation](./Knative-custom-install.md). --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml ``` - > **Note**: If your install fails on the first attempt, try rerunning the - > commands. They will likely succeed on the second attempt. For background - > info and to track the upcoming solution to this problem, see issues - > [#968](https://github.com/knative/docs/issues/968) and - > [#1036](https://github.com/knative/docs/issues/1036). - > **Note**: For the v0.4.0 release and newer, the `clusterrole.yaml` file is > required to enable the Build and Serving components to interact with each > other. diff --git a/docs/install/Knative-with-Gardener.md b/docs/install/Knative-with-Gardener.md index 499fa99db..eb37b4c2e 100644 --- a/docs/install/Knative-with-Gardener.md +++ b/docs/install/Knative-with-Gardener.md @@ -130,7 +130,23 @@ see [Performing a Custom Knative Installation](./Knative-custom-install.md). prevent modifications to Eventing Source resources, those changes will not be completed until the upgrade process finishes. -1. Run the `kubectl apply` command to install Knative and its dependencies: +1. To install Knative, first install the CRDs by running the `kubectl apply` + command once with the `-l knative.dev/crd-install=true` flag. This prevents + race conditions during the install, which cause intermittent errors: + + ```bash + kubectl apply --selector knative.dev/crd-install=true \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ + --filename https://github.com/knative/build/releases/download/v0.5.0/build.yaml \ + --filename https://github.com/knative/eventing/releases/download/v0.5.0/release.yaml \ + --filename https://github.com/knative/eventing-sources/releases/download/v0.5.0/eventing-sources.yaml \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/monitoring.yaml \ + --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml + ``` + +1. To complete the install of Knative and its dependencies, run the + `kubectl apply` command again, this time without the `--selector` + flag, to complete the install of Knative and its dependencies: ```bash kubectl apply --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ @@ -141,12 +157,6 @@ see [Performing a Custom Knative Installation](./Knative-custom-install.md). --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml ``` - > **Note**: If your install fails on the first attempt, try rerunning the - > commands. They will likely succeed on the second attempt. For background - > info and to track the upcoming solution to this problem, see issues - > [#968](https://github.com/knative/docs/issues/968) and - > [#1036](https://github.com/knative/docs/issues/1036). - > **Note**: For the v0.4.0 release and newer, the `clusterrole.yaml` file is > required to enable the Build and Serving components to interact with each > other. diff --git a/docs/install/Knative-with-IKS.md b/docs/install/Knative-with-IKS.md index b59f04a9c..2d69b7de7 100644 --- a/docs/install/Knative-with-IKS.md +++ b/docs/install/Knative-with-IKS.md @@ -211,7 +211,23 @@ see [Performing a Custom Knative Installation](./Knative-custom-install.md). prevent modifications to Eventing Source resources, those changes will not be completed until the upgrade process finishes. -1. Run the `kubectl apply` command to install Knative and its dependencies: +1. To install Knative, first install the CRDs by running the `kubectl apply` + command once with the `-l knative.dev/crd-install=true` flag. This prevents + race conditions during the install, which cause intermittent errors: + + ```bash + kubectl apply --selector knative.dev/crd-install=true \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ + --filename https://github.com/knative/build/releases/download/v0.5.0/build.yaml \ + --filename https://github.com/knative/eventing/releases/download/v0.5.0/release.yaml \ + --filename https://github.com/knative/eventing-sources/releases/download/v0.5.0/eventing-sources.yaml \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/monitoring.yaml \ + --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml + ``` + +1. To complete the install of Knative and its dependencies, run the + `kubectl apply` command again, this time without the `--selector` + flag, to complete the install of Knative and its dependencies: ```bash kubectl apply --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ @@ -222,12 +238,6 @@ see [Performing a Custom Knative Installation](./Knative-custom-install.md). --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml ``` - > **Note**: If your install fails on the first attempt, try rerunning the - > commands. They will likely succeed on the second attempt. For background - > info and to track the upcoming solution to this problem, see issues - > [#968](https://github.com/knative/docs/issues/968) and - > [#1036](https://github.com/knative/docs/issues/1036). - > **Note**: For the v0.4.0 release and newer, the `clusterrole.yaml` file is > required to enable the Build and Serving components to interact with each > other. diff --git a/docs/install/Knative-with-Minikube.md b/docs/install/Knative-with-Minikube.md index 7df9d6635..fa639bf12 100644 --- a/docs/install/Knative-with-Minikube.md +++ b/docs/install/Knative-with-Minikube.md @@ -89,58 +89,73 @@ rerun the command to see the current status. > command to view the component's status updates in real time. Use CTRL+C to > exit watch mode. -## Installing Knative Serving +## Installing Knative -Next, install [Knative Serving](https://github.com/knative/serving): +The following commands install all available Knative components as well as the +standard set of observability plugins. To customize your Knative installation, +see [Performing a Custom Knative Installation](./Knative-custom-install.md). -Because you have limited resources available, install only the Knative Serving -component, omitting the other Knative components as well as the observability -and monitoring plugins. +1. If you are upgrading from Knative 0.3.x: Update your domain and static IP + address to be associated with the LoadBalancer `istio-ingressgateway` instead + of `knative-ingressgateway`. Then run the following to clean up leftover + resources: -If you are upgrading from Knative 0.3.x: Update your domain and static IP -address to be associated with the LoadBalancer `istio-ingressgateway` instead of -`knative-ingressgateway`. Then run the following to clean up leftover resources: + ``` + kubectl delete svc knative-ingressgateway -n istio-system + kubectl delete deploy knative-ingressgateway -n istio-system + ``` -```shell -kubectl delete svc knative-ingressgateway -n istio-system -kubectl delete deploy knative-ingressgateway -n istio-system -``` + If you have the Knative Eventing Sources component installed, you will also + need to delete the following resource before upgrading: -If you have the Knative Eventing Sources component installed, you will also need -to delete the following resource before upgrading: + ``` + kubectl delete statefulset/controller-manager -n knative-sources + ``` -```shell -kubectl delete statefulset/controller-manager -n knative-sources -``` + While the deletion of this resource during the upgrade process will not + prevent modifications to Eventing Source resources, those changes will not be + completed until the upgrade process finishes. -While the deletion of this resource during the upgrade process will not prevent -modifications to Eventing Source resources, those changes will not be completed -until the upgrade process finishes. +1. To install Knative, first install the CRDs by running the `kubectl apply` + command once with the `-l knative.dev/crd-install=true` flag. This prevents + race conditions during the install, which cause intermittent errors: -Enter the following command: + ```bash + kubectl apply --selector knative.dev/crd-install=true \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ + --filename https://github.com/knative/build/releases/download/v0.5.0/build.yaml \ + --filename https://github.com/knative/eventing/releases/download/v0.5.0/release.yaml \ + --filename https://github.com/knative/eventing-sources/releases/download/v0.5.0/eventing-sources.yaml \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/monitoring.yaml \ + --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml + ``` -```shell -curl -L https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ - | sed 's/LoadBalancer/NodePort/' \ - | kubectl apply --filename - -``` +1. To complete the install of Knative and its dependencies, run the + `kubectl apply` command again, this time without the `--selector` + flag, to complete the install of Knative and its dependencies: -Monitor the Knative components until all of the components show a `STATUS` of -`Running`: + ```bash + kubectl apply --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ + --filename https://github.com/knative/build/releases/download/v0.5.0/build.yaml \ + --filename https://github.com/knative/eventing/releases/download/v0.5.0/release.yaml \ + --filename https://github.com/knative/eventing-sources/releases/download/v0.5.0/eventing-sources.yaml \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/monitoring.yaml \ + --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml + ``` -```shell -kubectl get pods --namespace knative-serving -``` + > **Note**: For the v0.4.0 release and newer, the `clusterrole.yaml` file is + > required to enable the Build and Serving components to interact with each + > other. -Just as with the Istio components, it will take a few seconds for the Knative -components to be up and running; you can rerun the command to see the current -status. - -> Note: Instead of rerunning the command, you can add `--watch` to the above -> command to view the component's status updates in real time. Use CTRL+C to -> exit watch mode. - -Now you can deploy an app to your newly created Knative cluster. +1. Monitor the Knative components until all of the components show a `STATUS` of + `Running`: + ```bash + kubectl get pods --namespace knative-serving + kubectl get pods --namespace knative-build + kubectl get pods --namespace knative-eventing + kubectl get pods --namespace knative-sources + kubectl get pods --namespace knative-monitoring + ``` ## Deploying an app diff --git a/docs/install/Knative-with-Minishift.md b/docs/install/Knative-with-Minishift.md index 1d1dcd2fc..6c20c58cb 100644 --- a/docs/install/Knative-with-Minishift.md +++ b/docs/install/Knative-with-Minishift.md @@ -172,10 +172,11 @@ curl -s https://raw.githubusercontent.com/knative/docs/master/docs/install/scrip > **NOTE:** It will take a few minutes for all the components to be up and > running. -### Install Knative Serving +### Install Knative -The following section details on deploying -[Knative Serving](https://github.com/knative/serving) to OpenShift. +The following commands install the Knative Serving and Build components on +OpenShift. To customize your Knative installation, see +[Performing a Custom Knative Installation](./Knative-custom-install.md). The [knative-openshift-policies.sh](./scripts/knative-openshift-policies.sh) runs the required commands to configure necessary privileges to the service @@ -213,7 +214,7 @@ curl -s https://raw.githubusercontent.com/knative/docs/master/docs/install/scrip prevent modifications to Eventing Source resources, those changes will not be completed until the upgrade process finishes. -1. Install Knative serving: +1. Install Knative Serving and Build: ```shell oc apply --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml && \ diff --git a/docs/install/Knative-with-PKS.md b/docs/install/Knative-with-PKS.md index 63e7c8f0e..1bb9234f2 100644 --- a/docs/install/Knative-with-PKS.md +++ b/docs/install/Knative-with-PKS.md @@ -104,7 +104,23 @@ see [Performing a Custom Knative Installation](./Knative-custom-install.md). prevent modifications to Eventing Source resources, those changes will not be completed until the upgrade process finishes. -1. Run the `kubectl apply` command to install Knative and its dependencies: +1. To install Knative, first install the CRDs by running the `kubectl apply` + command once with the `-l knative.dev/crd-install=true` flag. This prevents + race conditions during the install, which cause intermittent errors: + + ```bash + kubectl apply --selector knative.dev/crd-install=true \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ + --filename https://github.com/knative/build/releases/download/v0.5.0/build.yaml \ + --filename https://github.com/knative/eventing/releases/download/v0.5.0/release.yaml \ + --filename https://github.com/knative/eventing-sources/releases/download/v0.5.0/eventing-sources.yaml \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/monitoring.yaml \ + --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml + ``` + +1. To complete the install of Knative and its dependencies, run the + `kubectl apply` command again, this time without the `--selector` + flag, to complete the install of Knative and its dependencies: ```bash kubectl apply --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ @@ -115,12 +131,6 @@ see [Performing a Custom Knative Installation](./Knative-custom-install.md). --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml ``` - > **Note**: If your install fails on the first attempt, try rerunning the - > commands. They will likely succeed on the second attempt. For background - > info and to track the upcoming solution to this problem, see issues - > [#968](https://github.com/knative/docs/issues/968) and - > [#1036](https://github.com/knative/docs/issues/1036). - > **Note**: For the v0.4.0 release and newer, the `clusterrole.yaml` file is > required to enable the Build and Serving components to interact with each > other. diff --git a/docs/install/Knative-with-any-k8s.md b/docs/install/Knative-with-any-k8s.md index 95479a412..44b17bd74 100644 --- a/docs/install/Knative-with-any-k8s.md +++ b/docs/install/Knative-with-any-k8s.md @@ -83,7 +83,23 @@ your Knative installation, see prevent modifications to Eventing Source resources, those changes will not be completed until the upgrade process finishes. -1. Run the `kubectl apply` command to install Knative and its dependencies: +1. To install Knative, first install the CRDs by running the `kubectl apply` + command once with the `-l knative.dev/crd-install=true` flag. This prevents + race conditions during the install, which cause intermittent errors: + + ```bash + kubectl apply --selector knative.dev/crd-install=true \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ + --filename https://github.com/knative/build/releases/download/v0.5.0/build.yaml \ + --filename https://github.com/knative/eventing/releases/download/v0.5.0/release.yaml \ + --filename https://github.com/knative/eventing-sources/releases/download/v0.5.0/eventing-sources.yaml \ + --filename https://github.com/knative/serving/releases/download/v0.5.0/monitoring.yaml \ + --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml + ``` + +1. To complete the install of Knative and its dependencies, run the + `kubectl apply` command again, this time without the `--selector` + flag, to complete the install of Knative and its dependencies: ```bash kubectl apply --filename https://github.com/knative/serving/releases/download/v0.5.0/serving.yaml \ @@ -94,12 +110,6 @@ your Knative installation, see --filename https://raw.githubusercontent.com/knative/serving/v0.5.0/third_party/config/build/clusterrole.yaml ``` - > **Note**: If your install fails on the first attempt, try rerunning the - > commands. They will likely succeed on the second attempt. For background - > info and to track the upcoming solution to this problem, see issues - > [#968](https://github.com/knative/docs/issues/968) and - > [#1036](https://github.com/knative/docs/issues/1036). - > **Note**: For the v0.4.0 release and newer, the `clusterrole.yaml` file is > required to enable the Build and Serving components to interact with each > other. diff --git a/docs/install/README.md b/docs/install/README.md index 138f7d813..93110574e 100644 --- a/docs/install/README.md +++ b/docs/install/README.md @@ -69,6 +69,7 @@ available Knative components and a set of observability plugins. - [Knative Install on Google Kubernetes Engine](./Knative-with-GKE.md) - [Knative Install on IBM Cloud Kubernetes Service](./Knative-with-IKS.md) - [Knative Install on IBM Cloud Private](./Knative-with-ICP.md) +- [Knative Install on Minikube](./Knative-with-Minikube.md) - [Knative Install on Pivotal Container Service](./Knative-with-PKS.md) If you already have a Kubernetes cluster you're comfortable installing _alpha_ @@ -82,10 +83,9 @@ The guides below install some of the available Knative components, without all available observability plugins, to minimize the disk space used for install. - [Knative Install on Docker for Mac](./Knative-with-Docker-for-Mac.md) -- [Knative Install on Minikube](./Knative-with-Minikube.md) - [Knative Install on Minishift](./Knative-with-Minishift.md) - [Knative Install on OpenShift](./Knative-with-OpenShift.md) -- [Knative Install via Operator](https://github.com/openshift-cloud-functions/Documentation/blob/master/knative-OCP-4x.md) +- [Knative Install on OpenShift via Operator](https://github.com/openshift-cloud-functions/Documentation/blob/master/knative-OCP-4x.md) **Custom install guide**