Update nginx to modern versions (#19198)

* update nginx versions

* update

* update examples
This commit is contained in:
inductor
2020-03-18 02:48:23 +09:00
committed by GitHub
parent d5f741b03e
commit 4297f3b29c
23 changed files with 73 additions and 73 deletions
@@ -186,7 +186,7 @@ metadata:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.13-alpine image: nginx:1.16-alpine
ports: ports:
- containerPort: 80 - containerPort: 80
volumeMounts: volumeMounts:
@@ -424,16 +424,16 @@ At some point, you'll eventually need to update your deployed application, typic
We'll guide you through how to create and update applications with Deployments. We'll guide you through how to create and update applications with Deployments.
Let's say you were running version 1.7.9 of nginx: Let's say you were running version 1.14.2 of nginx:
```shell ```shell
kubectl run my-nginx --image=nginx:1.7.9 --replicas=3 kubectl run my-nginx --image=nginx:1.14.2 --replicas=3
``` ```
```shell ```shell
deployment.apps/my-nginx created deployment.apps/my-nginx created
``` ```
To update to version 1.9.1, simply change `.spec.template.spec.containers[0].image` from `nginx:1.7.9` to `nginx:1.9.1`, with the kubectl commands we learned above. To update to version 1.16.1, simply change `.spec.template.spec.containers[0].image` from `nginx:1.14.2` to `nginx:1.16.1`, with the kubectl commands we learned above.
```shell ```shell
kubectl edit deployment/my-nginx kubectl edit deployment/my-nginx
@@ -319,7 +319,7 @@ spec:
topologyKey: "kubernetes.io/hostname" topologyKey: "kubernetes.io/hostname"
containers: containers:
- name: web-app - name: web-app
image: nginx:1.12-alpine image: nginx:1.16-alpine
``` ```
If we create the above two deployments, our three node cluster should look like below. If we create the above two deployments, our three node cluster should look like below.
@@ -82,7 +82,7 @@ metadata:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -69,7 +69,7 @@ metadata:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -64,7 +64,7 @@ metadata:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
``` ```
@@ -64,7 +64,7 @@ In this example:
* The Pods are labeled `app: nginx`using the `labels` field. * The Pods are labeled `app: nginx`using the `labels` field.
* The Pod template's specification, or `.template.spec` field, indicates that * The Pod template's specification, or `.template.spec` field, indicates that
the Pods run one container, `nginx`, which runs the `nginx` the Pods run one container, `nginx`, which runs the `nginx`
[Docker Hub](https://hub.docker.com/) image at version 1.7.9. [Docker Hub](https://hub.docker.com/) image at version 1.14.2.
* Create one container and name it `nginx` using the `name` field. * Create one container and name it `nginx` using the `name` field.
Follow the steps given below to create the above Deployment: Follow the steps given below to create the above Deployment:
@@ -153,15 +153,15 @@ is changed, for example if the labels or container images of the template are up
Follow the steps given below to update your Deployment: Follow the steps given below to update your Deployment:
1. Let's update the nginx Pods to use the `nginx:1.9.1` image instead of the `nginx:1.7.9` image. 1. Let's update the nginx Pods to use the `nginx:1.16.1` image instead of the `nginx:1.14.2` image.
```shell ```shell
kubectl --record deployment.apps/nginx-deployment set image deployment.v1.apps/nginx-deployment nginx=nginx:1.9.1 kubectl --record deployment.apps/nginx-deployment set image deployment.v1.apps/nginx-deployment nginx=nginx:1.16.1
``` ```
or simply use the following command: or simply use the following command:
```shell ```shell
kubectl set image deployment/nginx-deployment nginx=nginx:1.9.1 --record kubectl set image deployment/nginx-deployment nginx=nginx:1.16.1 --record
``` ```
The output is similar to this: The output is similar to this:
@@ -169,7 +169,7 @@ Follow the steps given below to update your Deployment:
deployment.apps/nginx-deployment image updated deployment.apps/nginx-deployment image updated
``` ```
Alternatively, you can `edit` the Deployment and change `.spec.template.spec.containers[0].image` from `nginx:1.7.9` to `nginx:1.9.1`: Alternatively, you can `edit` the Deployment and change `.spec.template.spec.containers[0].image` from `nginx:1.14.2` to `nginx:1.16.1`:
```shell ```shell
kubectl edit deployment.v1.apps/nginx-deployment kubectl edit deployment.v1.apps/nginx-deployment
@@ -265,7 +265,7 @@ up to 3 replicas, as well as scaling down the old ReplicaSet to 0 replicas.
Labels: app=nginx Labels: app=nginx
Containers: Containers:
nginx: nginx:
Image: nginx:1.9.1 Image: nginx:1.16.1
Port: 80/TCP Port: 80/TCP
Environment: <none> Environment: <none>
Mounts: <none> Mounts: <none>
@@ -306,11 +306,11 @@ If you update a Deployment while an existing rollout is in progress, the Deploym
as per the update and start scaling that up, and rolls over the ReplicaSet that it was scaling up previously as per the update and start scaling that up, and rolls over the ReplicaSet that it was scaling up previously
-- it will add it to its list of old ReplicaSets and start scaling it down. -- it will add it to its list of old ReplicaSets and start scaling it down.
For example, suppose you create a Deployment to create 5 replicas of `nginx:1.7.9`, For example, suppose you create a Deployment to create 5 replicas of `nginx:1.14.2`,
but then update the Deployment to create 5 replicas of `nginx:1.9.1`, when only 3 but then update the Deployment to create 5 replicas of `nginx:1.16.1`, when only 3
replicas of `nginx:1.7.9` had been created. In that case, the Deployment immediately starts replicas of `nginx:1.14.2` had been created. In that case, the Deployment immediately starts
killing the 3 `nginx:1.7.9` Pods that it had created, and starts creating killing the 3 `nginx:1.14.2` Pods that it had created, and starts creating
`nginx:1.9.1` Pods. It does not wait for the 5 replicas of `nginx:1.7.9` to be created `nginx:1.16.1` Pods. It does not wait for the 5 replicas of `nginx:1.14.2` to be created
before changing course. before changing course.
### Label selector updates ### Label selector updates
@@ -347,10 +347,10 @@ This means that when you roll back to an earlier revision, only the Deployment's
rolled back. rolled back.
{{< /note >}} {{< /note >}}
* Suppose that you made a typo while updating the Deployment, by putting the image name as `nginx:1.91` instead of `nginx:1.9.1`: * Suppose that you made a typo while updating the Deployment, by putting the image name as `nginx:1.161` instead of `nginx:1.16.1`:
```shell ```shell
kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.91 --record=true kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.161 --record=true
``` ```
The output is similar to this: The output is similar to this:
@@ -427,7 +427,7 @@ rolled back.
Labels: app=nginx Labels: app=nginx
Containers: Containers:
nginx: nginx:
Image: nginx:1.91 Image: nginx:1.161
Port: 80/TCP Port: 80/TCP
Host Port: 0/TCP Host Port: 0/TCP
Environment: <none> Environment: <none>
@@ -468,13 +468,13 @@ Follow the steps given below to check the rollout history:
deployments "nginx-deployment" deployments "nginx-deployment"
REVISION CHANGE-CAUSE REVISION CHANGE-CAUSE
1 kubectl apply --filename=https://k8s.io/examples/controllers/nginx-deployment.yaml --record=true 1 kubectl apply --filename=https://k8s.io/examples/controllers/nginx-deployment.yaml --record=true
2 kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.9.1 --record=true 2 kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.16.1 --record=true
3 kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.91 --record=true 3 kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.161 --record=true
``` ```
`CHANGE-CAUSE` is copied from the Deployment annotation `kubernetes.io/change-cause` to its revisions upon creation. You can specify the`CHANGE-CAUSE` message by: `CHANGE-CAUSE` is copied from the Deployment annotation `kubernetes.io/change-cause` to its revisions upon creation. You can specify the`CHANGE-CAUSE` message by:
* Annotating the Deployment with `kubectl annotate deployment.v1.apps/nginx-deployment kubernetes.io/change-cause="image updated to 1.9.1"` * Annotating the Deployment with `kubectl annotate deployment.v1.apps/nginx-deployment kubernetes.io/change-cause="image updated to 1.16.1"`
* Append the `--record` flag to save the `kubectl` command that is making changes to the resource. * Append the `--record` flag to save the `kubectl` command that is making changes to the resource.
* Manually editing the manifest of the resource. * Manually editing the manifest of the resource.
@@ -488,10 +488,10 @@ Follow the steps given below to check the rollout history:
deployments "nginx-deployment" revision 2 deployments "nginx-deployment" revision 2
Labels: app=nginx Labels: app=nginx
pod-template-hash=1159050644 pod-template-hash=1159050644
Annotations: kubernetes.io/change-cause=kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.9.1 --record=true Annotations: kubernetes.io/change-cause=kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.16.1 --record=true
Containers: Containers:
nginx: nginx:
Image: nginx:1.9.1 Image: nginx:1.16.1
Port: 80/TCP Port: 80/TCP
QoS Tier: QoS Tier:
cpu: BestEffort cpu: BestEffort
@@ -549,7 +549,7 @@ Follow the steps given below to rollback the Deployment from the current version
CreationTimestamp: Sun, 02 Sep 2018 18:17:55 -0500 CreationTimestamp: Sun, 02 Sep 2018 18:17:55 -0500
Labels: app=nginx Labels: app=nginx
Annotations: deployment.kubernetes.io/revision=4 Annotations: deployment.kubernetes.io/revision=4
kubernetes.io/change-cause=kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.9.1 --record=true kubernetes.io/change-cause=kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.16.1 --record=true
Selector: app=nginx Selector: app=nginx
Replicas: 3 desired | 3 updated | 3 total | 3 available | 0 unavailable Replicas: 3 desired | 3 updated | 3 total | 3 available | 0 unavailable
StrategyType: RollingUpdate StrategyType: RollingUpdate
@@ -559,7 +559,7 @@ Follow the steps given below to rollback the Deployment from the current version
Labels: app=nginx Labels: app=nginx
Containers: Containers:
nginx: nginx:
Image: nginx:1.9.1 Image: nginx:1.16.1
Port: 80/TCP Port: 80/TCP
Host Port: 0/TCP Host Port: 0/TCP
Environment: <none> Environment: <none>
@@ -722,7 +722,7 @@ apply multiple fixes in between pausing and resuming without triggering unnecess
* Then update the image of the Deployment: * Then update the image of the Deployment:
```shell ```shell
kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.9.1 kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.16.1
``` ```
The output is similar to this: The output is similar to this:
@@ -183,7 +183,7 @@ For field values of type string or integer, use normal style without quotation m
Do | Don't Do | Don't
:--| :----- :--| :-----
Set the value of `imagePullPolicy` to Always. | Set the value of `imagePullPolicy` to "Always". Set the value of `imagePullPolicy` to Always. | Set the value of `imagePullPolicy` to "Always".
Set the value of `image` to nginx:1.8. | Set the value of `image` to `nginx:1.8`. Set the value of `image` to nginx:1.16. | Set the value of `image` to `nginx:1.16`.
Set the value of the `replicas` field to 2. | Set the value of the `replicas` field to `2`. Set the value of the `replicas` field to 2. | Set the value of the `replicas` field to `2`.
{{< /table >}} {{< /table >}}
@@ -208,7 +208,7 @@ spec:
serviceAccountName: bob-the-bot serviceAccountName: bob-the-bot
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
``` ```
Service account bearer tokens are perfectly valid to use outside the cluster and Service account bearer tokens are perfectly valid to use outside the cluster and
@@ -119,7 +119,7 @@ metadata:
{"apiVersion":"apps/v1","kind":"Deployment", {"apiVersion":"apps/v1","kind":"Deployment",
"metadata":{"annotations":{},"name":"nginx-deployment","namespace":"default"}, "metadata":{"annotations":{},"name":"nginx-deployment","namespace":"default"},
"spec":{"minReadySeconds":5,"selector":{"matchLabels":{"app":nginx}},"template":{"metadata":{"labels":{"app":"nginx"}}, "spec":{"minReadySeconds":5,"selector":{"matchLabels":{"app":nginx}},"template":{"metadata":{"labels":{"app":"nginx"}},
"spec":{"containers":[{"image":"nginx:1.7.9","name":"nginx", "spec":{"containers":[{"image":"nginx:1.14.2","name":"nginx",
"ports":[{"containerPort":80}]}]}}}} "ports":[{"containerPort":80}]}]}}}}
# ... # ...
spec: spec:
@@ -136,7 +136,7 @@ spec:
app: nginx app: nginx
spec: spec:
containers: containers:
- image: nginx:1.7.9 - image: nginx:1.14.2
# ... # ...
name: nginx name: nginx
ports: ports:
@@ -199,7 +199,7 @@ metadata:
{"apiVersion":"apps/v1","kind":"Deployment", {"apiVersion":"apps/v1","kind":"Deployment",
"metadata":{"annotations":{},"name":"nginx-deployment","namespace":"default"}, "metadata":{"annotations":{},"name":"nginx-deployment","namespace":"default"},
"spec":{"minReadySeconds":5,"selector":{"matchLabels":{"app":nginx}},"template":{"metadata":{"labels":{"app":"nginx"}}, "spec":{"minReadySeconds":5,"selector":{"matchLabels":{"app":nginx}},"template":{"metadata":{"labels":{"app":"nginx"}},
"spec":{"containers":[{"image":"nginx:1.7.9","name":"nginx", "spec":{"containers":[{"image":"nginx:1.14.2","name":"nginx",
"ports":[{"containerPort":80}]}]}}}} "ports":[{"containerPort":80}]}]}}}}
# ... # ...
spec: spec:
@@ -216,7 +216,7 @@ spec:
app: nginx app: nginx
spec: spec:
containers: containers:
- image: nginx:1.7.9 - image: nginx:1.14.2
# ... # ...
name: nginx name: nginx
ports: ports:
@@ -255,7 +255,7 @@ metadata:
{"apiVersion":"apps/v1","kind":"Deployment", {"apiVersion":"apps/v1","kind":"Deployment",
"metadata":{"annotations":{},"name":"nginx-deployment","namespace":"default"}, "metadata":{"annotations":{},"name":"nginx-deployment","namespace":"default"},
"spec":{"minReadySeconds":5,"selector":{"matchLabels":{"app":nginx}},"template":{"metadata":{"labels":{"app":"nginx"}}, "spec":{"minReadySeconds":5,"selector":{"matchLabels":{"app":nginx}},"template":{"metadata":{"labels":{"app":"nginx"}},
"spec":{"containers":[{"image":"nginx:1.7.9","name":"nginx", "spec":{"containers":[{"image":"nginx:1.14.2","name":"nginx",
"ports":[{"containerPort":80}]}]}}}} "ports":[{"containerPort":80}]}]}}}}
# ... # ...
spec: spec:
@@ -273,7 +273,7 @@ spec:
app: nginx app: nginx
spec: spec:
containers: containers:
- image: nginx:1.7.9 - image: nginx:1.14.2
# ... # ...
name: nginx name: nginx
ports: ports:
@@ -282,7 +282,7 @@ spec:
``` ```
Update the `simple_deployment.yaml` configuration file to change the image from Update the `simple_deployment.yaml` configuration file to change the image from
`nginx:1.7.9` to `nginx:1.11.9`, and delete the `minReadySeconds` field: `nginx:1.14.2` to `nginx:1.16.1`, and delete the `minReadySeconds` field:
{{< codenew file="application/update_deployment.yaml" >}} {{< codenew file="application/update_deployment.yaml" >}}
@@ -303,7 +303,7 @@ The output shows the following changes to the live configuration:
* The `replicas` field retains the value of 2 set by `kubectl scale`. * The `replicas` field retains the value of 2 set by `kubectl scale`.
This is possible because it is omitted from the configuration file. This is possible because it is omitted from the configuration file.
* The `image` field has been updated to `nginx:1.11.9` from `nginx:1.7.9`. * The `image` field has been updated to `nginx:1.16.1` from `nginx:1.14.2`.
* The `last-applied-configuration` annotation has been updated with the new image. * The `last-applied-configuration` annotation has been updated with the new image.
* The `minReadySeconds` field has been cleared. * The `minReadySeconds` field has been cleared.
* The `last-applied-configuration` annotation no longer contains the `minReadySeconds` field. * The `last-applied-configuration` annotation no longer contains the `minReadySeconds` field.
@@ -320,7 +320,7 @@ metadata:
{"apiVersion":"apps/v1","kind":"Deployment", {"apiVersion":"apps/v1","kind":"Deployment",
"metadata":{"annotations":{},"name":"nginx-deployment","namespace":"default"}, "metadata":{"annotations":{},"name":"nginx-deployment","namespace":"default"},
"spec":{"selector":{"matchLabels":{"app":nginx}},"template":{"metadata":{"labels":{"app":"nginx"}}, "spec":{"selector":{"matchLabels":{"app":nginx}},"template":{"metadata":{"labels":{"app":"nginx"}},
"spec":{"containers":[{"image":"nginx:1.11.9","name":"nginx", "spec":{"containers":[{"image":"nginx:1.16.1","name":"nginx",
"ports":[{"containerPort":80}]}]}}}} "ports":[{"containerPort":80}]}]}}}}
# ... # ...
spec: spec:
@@ -338,7 +338,7 @@ spec:
app: nginx app: nginx
spec: spec:
containers: containers:
- image: nginx:1.11.9 # Set by `kubectl apply` - image: nginx:1.16.1 # Set by `kubectl apply`
# ... # ...
name: nginx name: nginx
ports: ports:
@@ -460,7 +460,7 @@ metadata:
{"apiVersion":"apps/v1","kind":"Deployment", {"apiVersion":"apps/v1","kind":"Deployment",
"metadata":{"annotations":{},"name":"nginx-deployment","namespace":"default"}, "metadata":{"annotations":{},"name":"nginx-deployment","namespace":"default"},
"spec":{"minReadySeconds":5,"selector":{"matchLabels":{"app":nginx}},"template":{"metadata":{"labels":{"app":"nginx"}}, "spec":{"minReadySeconds":5,"selector":{"matchLabels":{"app":nginx}},"template":{"metadata":{"labels":{"app":"nginx"}},
"spec":{"containers":[{"image":"nginx:1.7.9","name":"nginx", "spec":{"containers":[{"image":"nginx:1.14.2","name":"nginx",
"ports":[{"containerPort":80}]}]}}}} "ports":[{"containerPort":80}]}]}}}}
# ... # ...
spec: spec:
@@ -478,7 +478,7 @@ spec:
app: nginx app: nginx
spec: spec:
containers: containers:
- image: nginx:1.7.9 - image: nginx:1.14.2
# ... # ...
name: nginx name: nginx
ports: ports:
@@ -518,7 +518,7 @@ metadata:
{"apiVersion":"apps/v1","kind":"Deployment", {"apiVersion":"apps/v1","kind":"Deployment",
"metadata":{"annotations":{},"name":"nginx-deployment","namespace":"default"}, "metadata":{"annotations":{},"name":"nginx-deployment","namespace":"default"},
"spec":{"selector":{"matchLabels":{"app":nginx}},"template":{"metadata":{"labels":{"app":"nginx"}}, "spec":{"selector":{"matchLabels":{"app":nginx}},"template":{"metadata":{"labels":{"app":"nginx"}},
"spec":{"containers":[{"image":"nginx:1.11.9","name":"nginx", "spec":{"containers":[{"image":"nginx:1.16.1","name":"nginx",
"ports":[{"containerPort":80}]}]}}}} "ports":[{"containerPort":80}]}]}}}}
# ... # ...
spec: spec:
@@ -536,7 +536,7 @@ spec:
app: nginx app: nginx
spec: spec:
containers: containers:
- image: nginx:1.11.9 # Set by `kubectl apply` - image: nginx:1.16.1 # Set by `kubectl apply`
# ... # ...
name: nginx name: nginx
ports: ports:
@@ -654,7 +654,7 @@ by `name`.
# last-applied-configuration value # last-applied-configuration value
containers: containers:
- name: nginx - name: nginx
image: nginx:1.10 image: nginx:1.16
- name: nginx-helper-a # key: nginx-helper-a; will be deleted in result - name: nginx-helper-a # key: nginx-helper-a; will be deleted in result
image: helper:1.3 image: helper:1.3
- name: nginx-helper-b # key: nginx-helper-b; will be retained - name: nginx-helper-b # key: nginx-helper-b; will be retained
@@ -663,7 +663,7 @@ by `name`.
# configuration file value # configuration file value
containers: containers:
- name: nginx - name: nginx
image: nginx:1.10 image: nginx:1.16
- name: nginx-helper-b - name: nginx-helper-b
image: helper:1.3 image: helper:1.3
- name: nginx-helper-c # key: nginx-helper-c; will be added in result - name: nginx-helper-c # key: nginx-helper-c; will be added in result
@@ -672,7 +672,7 @@ by `name`.
# live configuration # live configuration
containers: containers:
- name: nginx - name: nginx
image: nginx:1.10 image: nginx:1.16
- name: nginx-helper-a - name: nginx-helper-a
image: helper:1.3 image: helper:1.3
- name: nginx-helper-b - name: nginx-helper-b
@@ -684,7 +684,7 @@ by `name`.
# result after merge # result after merge
containers: containers:
- name: nginx - name: nginx
image: nginx:1.10 image: nginx:1.16
# Element nginx-helper-a was deleted # Element nginx-helper-a was deleted
- name: nginx-helper-b - name: nginx-helper-b
image: helper:1.3 image: helper:1.3
@@ -779,7 +779,7 @@ spec:
app: nginx app: nginx
spec: spec:
containers: containers:
- image: nginx:1.7.9 - image: nginx:1.14.2
imagePullPolicy: IfNotPresent # defaulted by apiserver imagePullPolicy: IfNotPresent # defaulted by apiserver
name: nginx name: nginx
ports: ports:
@@ -819,7 +819,7 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -834,7 +834,7 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -852,7 +852,7 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -870,7 +870,7 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
``` ```
@@ -153,14 +153,14 @@ from the [`kubectl` reference](/docs/reference/generated/kubectl/kubectl-command
## Walkthrough ## Walkthrough
Let's say you were running version 1.7.9 of nginx: Let's say you were running version 1.14.2 of nginx:
{{< codenew file="controllers/replication-nginx-1.7.9.yaml" >}} {{< codenew file="controllers/replication-nginx-1.14.2.yaml" >}}
To update to version 1.9.1, you can use [`kubectl rolling-update --image`](https://git.k8s.io/community/contributors/design-proposals/cli/simple-rolling-update.md) to specify the new image: To update to version 1.16.1, you can use [`kubectl rolling-update --image`](https://git.k8s.io/community/contributors/design-proposals/cli/simple-rolling-update.md) to specify the new image:
```shell ```shell
kubectl rolling-update my-nginx --image=nginx:1.9.1 kubectl rolling-update my-nginx --image=nginx:1.16.1
``` ```
``` ```
Created my-nginx-ccba8fbd8cc8160970f63f9a2696fc46 Created my-nginx-ccba8fbd8cc8160970f63f9a2696fc46
@@ -213,7 +213,7 @@ This is one example where the immutability of containers is a huge asset.
If you need to update more than just the image (e.g., command arguments, environment variables), you can create a new replication controller, with a new name and distinguishing label value, such as: If you need to update more than just the image (e.g., command arguments, environment variables), you can create a new replication controller, with a new name and distinguishing label value, such as:
{{< codenew file="controllers/replication-nginx-1.9.2.yaml" >}} {{< codenew file="controllers/replication-nginx-1.16.1.yaml" >}}
and roll it out: and roll it out:
@@ -34,7 +34,7 @@ This page shows how to run an application using a Kubernetes Deployment object.
You can run an application by creating a Kubernetes Deployment object, and you You can run an application by creating a Kubernetes Deployment object, and you
can describe a Deployment in a YAML file. For example, this YAML file describes can describe a Deployment in a YAML file. For example, this YAML file describes
a Deployment that runs the nginx:1.7.9 Docker image: a Deployment that runs the nginx:1.14.2 Docker image:
{{< codenew file="application/deployment.yaml" >}} {{< codenew file="application/deployment.yaml" >}}
@@ -64,7 +64,7 @@ a Deployment that runs the nginx:1.7.9 Docker image:
Labels: app=nginx Labels: app=nginx
Containers: Containers:
nginx: nginx:
Image: nginx:1.7.9 Image: nginx:1.14.2
Port: 80/TCP Port: 80/TCP
Environment: <none> Environment: <none>
Mounts: <none> Mounts: <none>
@@ -14,6 +14,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.8 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -14,6 +14,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.8 # Update the version of nginx from 1.7.9 to 1.8 image: nginx:1.16.1 # Update the version of nginx from 1.14.2 to 1.16.1
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -14,6 +14,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -29,6 +29,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -14,6 +14,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -14,6 +14,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -13,6 +13,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.11.9 # update the image image: nginx:1.16.1 # update the image
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -16,6 +16,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -11,6 +11,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -15,7 +15,7 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.9.2 image: nginx:1.16.1
args: ["nginx", "-T"] args: ["nginx", "-T"]
ports: ports:
- containerPort: 80 - containerPort: 80
+1 -1
View File
@@ -5,6 +5,6 @@ metadata:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80