This will deploy the operator in the nginx-ingress-operator-system
namespace.
-
Deploy the Operator and associated resources:
- Clone the
nginx-ingress-operator
repo:
git clone https://github.com/nginxinc/nginx-ingress-helm-operator/ --branch v3.0.0 cd nginx-ingress-helm-operator/
- To deploy the Operator and associated resources to all environments, run:
make deploy IMG=nginx/nginx-ingress-operator:3.0.0
- Clone the
-
Check that the Operator is running:
kubectl get deployments -n nginx-ingress-operator-system NAME READY UP-TO-DATE AVAILABLE AGE nginx-ingress-operator-controller-manager 1/1 1 1 15s
-
OpenShift
Additional steps:
In order to deploy NGINX Ingress Controller instances into OpenShift environments, a new SCC is required to be created on the cluster which will be used to bind the specific required capabilities to the NGINX Ingress service account(s). To do so for NIC deployments, please run the following command (assuming you are logged in with administrator access to the cluster):
kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-ingress-helm-operator/v3.0.0/resources/scc.yaml
Alternatively, to create an SCC for NIC daemonsets, please run this command:
kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-ingress-helm-operator/v3.0.0/resources/scc-daemonset.yaml
You can now deploy the NGINX Ingress Controller instances.
Note: If you're upgrading your operator installation to a later release, navigate here and run kubectl apply -f crds/
or oc apply -f crds/
as a prerequisite
You can use the operator (including the kube-rbac-proxy) images from your own private registry.
-
Tag the images for your private registry
docker tag quay.io/nginx/nginx-ingress-operator:3.0.0 <my-private-registry>/nginx-ingress-operator:3.0.0 docker tag quay.io/brancz/kube-rbac-proxy:v0.18.0 <my-private-registry>/kube-rbac-proxy:v0.18.0
-
Push the image to your private registry
docker push <my-private-registry>/nginx-ingress-operator:3.0.0 docker push <my-private-registry>/kube-rbac-proxy:v0.18.0
-
Follow step 1 above but in step 1.2 you can run
make deploy IMG=<my-private-registry>/nginx-ingress-operator:3.0.0 KRP_IMAGE_BASE=<my-private-registry>/kube-rbac-proxy
Note: If you need to use a different
kube-rbac-proxy
version than the default, use theKRP_IMAGE_TAG
variableNote: To use an image pull secret, you can specify the
IMAGE_PULL_SECRET_NAME
variable, egIMAGE_PULL_SECRET_NAME=regcred