Skip to content

Add better documentation for deploying for dev #1657

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Nov 6, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 46 additions & 5 deletions deploy/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,11 @@
- [Verify installation](#verify-installation)
- [Detect installed version](#detect-installed-version)

## Mandatory commands
## Generic Deployment

The following resources are required for a generic deployment.

### Mandatory commands

```console
curl https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/namespace.yaml \
Expand All @@ -34,14 +38,14 @@ curl https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/ud
| kubectl apply -f -
```

## Install without RBAC roles
### Install without RBAC roles

```console
curl https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/without-rbac.yaml \
| kubectl apply -f -
```

## Install with RBAC roles
### Install with RBAC roles

Please check the [RBAC](rbac.md) document.

Expand All @@ -53,16 +57,53 @@ curl https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/wi
| kubectl apply -f -
```

## Custom Service provider
## Custom Service Provider Deployment

There are cloud provider specific yaml files
There are cloud provider specific yaml files.

### minikube

For standard usage:

```console
minikube addons enable ingress
```

For development:

1. Disable the ingress addon:

```console
$ minikube addons disable ingress
```

2. Use the [docker daemon](https://github.com/kubernetes/minikube/blob/master/docs/reusing_the_docker_daemon.md)
3. [Build the image](../docs/development.md)
4. Perform [Mandatory commands](#mandatory-commands)
5. Install the `nginx-ingress-controller` deployment [without RBAC roles](#install-without-rbac-roles) or [with RBAC roles](#install-with-rbac-roles)
6. Edit the `nginx-ingress-controller` deployment to use your custom image. Local images can be seen by performing `docker images`.

```console
$ kubectl edit deployment nginx-ingress-controller -n ingress-nginx
```

edit the following section:

```yaml
image: <IMAGE-NAME>:<TAG>
imagePullPolicy: IfNotPresent
name: nginx-ingress-controller
```

7. Confirm the `nginx-ingress-controller` deployment exists:

```console
$ kubectl get pods -n ingress-nginx
NAME READY STATUS RESTARTS AGE
default-http-backend-66b447d9cf-rrlf9 1/1 Running 0 12s
nginx-ingress-controller-fdcdcd6dd-vvpgs 1/1 Running 0 11s
```

### AWS

In AWS we use an Elastic Load Balancer (ELB) to expose the NGINX Ingress controller behind a Service of `Type=LoadBalancer`.
Expand Down
1 change: 0 additions & 1 deletion docs/development.md
Original file line number Diff line number Diff line change
Expand Up @@ -123,4 +123,3 @@ cherry-picked into a release branch.
* If you're not confident about the stability of the code,
[tag](https://help.github.com/articles/working-with-tags/) it as alpha or beta.
Typically, a release branch should have stable code.