1KUBERNETES(1)(kubernetes)                            KUBERNETES(1)(kubernetes)
2
3
4
5Eric Paris Jan 2015
6
7

NAME

9       kubectl set image - Update image of a pod template
10
11
12

SYNOPSIS

14       kubectl set image [OPTIONS]
15
16
17

DESCRIPTION

19       Update existing container image(s) of resources.
20
21
22       Possible resources include (case insensitive):
23
24
25       pod  (po),  replicationcontroller  (rc), deployment (deploy), daemonset
26       (ds), replicaset (rs)
27
28
29

OPTIONS

31       --all=false      Select all resources, including uninitialized ones, in
32       the namespace of the specified resource types
33
34
35       --allow-missing-template-keys=true       If  true, ignore any errors in
36       templates when a field or map key is missing in the template. Only  ap‐
37       plies to golang and jsonpath output formats.
38
39
40       --dry-run="none"       Must be "none", "server", or "client". If client
41       strategy, only print the object that would be sent, without sending it.
42       If  server  strategy, submit server-side request without persisting the
43       resource.
44
45
46       --field-manager="kubectl-set"      Name of the manager  used  to  track
47       field ownership.
48
49
50       -f, --filename=[]      Filename, directory, or URL to files identifying
51       the resource to get from a server.
52
53
54       -k, --kustomize=""      Process the kustomization directory. This  flag
55       can't be used together with -f or -R.
56
57
58       --local=false       If  true, set image will NOT contact api-server but
59       run locally.
60
61
62       -o, --output=""       Output  format.  One  of:  json|yaml|name|go-tem‐
63       plate|go-template-file|template|templatefile|jsonpath|json‐
64       path-as-json|jsonpath-file.
65
66
67       --record=false      Record current kubectl command in the resource  an‐
68       notation.  If  set to false, do not record the command. If set to true,
69       record the command. If not set, default to updating the existing  anno‐
70       tation value only if one already exists.
71
72
73       -R, --recursive=false      Process the directory used in -f, --filename
74       recursively. Useful when you want to manage related manifests organized
75       within the same directory.
76
77
78       -l, --selector=""      Selector (label query) to filter on, not includ‐
79       ing  uninitialized  ones,  supports  '=',  '==',  and   '!='.(e.g.   -l
80       key1=value1,key2=value2)
81
82
83       --template=""      Template string or path to template file to use when
84       -o=go-template, -o=go-template-file. The template format is golang tem‐
85       plates [http://golang.org/pkg/text/template/#pkg-overview].
86
87
88

OPTIONS INHERITED FROM PARENT COMMANDS

90       --add-dir-header=false       If  true,  adds  the file directory to the
91       header of the log messages
92
93
94       --alsologtostderr=false      log to standard error as well as files
95
96
97       --application-metrics-count-limit=100      Max  number  of  application
98       metrics to store (per container)
99
100
101       --as=""      Username to impersonate for the operation
102
103
104       --as-group=[]       Group  to  impersonate for the operation, this flag
105       can be repeated to specify multiple groups.
106
107
108       --azure-container-registry-config=""      Path to the  file  containing
109       Azure container registry configuration information.
110
111
112       --boot-id-file="/proc/sys/kernel/random/boot_id"        Comma-separated
113       list of files to check for boot-id. Use the first one that exists.
114
115
116       --cache-dir="/builddir/.kube/cache"      Default cache directory
117
118
119       --certificate-authority=""      Path to a cert file for the certificate
120       authority
121
122
123       --client-certificate=""      Path to a client certificate file for TLS
124
125
126       --client-key=""      Path to a client key file for TLS
127
128
129       --cloud-provider-gce-l7lb-src-cidrs=130.211.0.0/22,35.191.0.0/16
130            CIDRs opened in GCE firewall for  L7  LB  traffic  proxy    health
131       checks
132
133
134       --cloud-provider-gce-lb-src-cidrs=130.211.0.0/22,209.85.152.0/22,209.85.204.0/22,35.191.0.0/16
135            CIDRs opened in GCE firewall for  L4  LB  traffic  proxy    health
136       checks
137
138
139       --cluster=""      The name of the kubeconfig cluster to use
140
141
142       --container-hints="/etc/cadvisor/container_hints.json"      location of
143       the container hints file
144
145
146       --containerd="/run/containerd/containerd.sock"      containerd endpoint
147
148
149       --containerd-namespace="k8s.io"      containerd namespace
150
151
152       --context=""      The name of the kubeconfig context to use
153
154
155       --default-not-ready-toleration-seconds=300      Indicates  the  tolera‐
156       tionSeconds  of  the toleration for notReady:NoExecute that is added by
157       default to every pod that does not already have such a toleration.
158
159
160       --default-unreachable-toleration-seconds=300      Indicates the tolera‐
161       tionSeconds  of  the toleration for unreachable:NoExecute that is added
162       by default to every pod that does not already have such a toleration.
163
164
165       --disable-root-cgroup-stats=false      Disable collecting  root  Cgroup
166       stats
167
168
169       --docker="unix:///var/run/docker.sock"      docker endpoint
170
171
172       --docker-env-metadata-whitelist=""      a comma-separated list of envi‐
173       ronment variable keys matched with specified prefix that  needs  to  be
174       collected for docker containers
175
176
177       --docker-only=false       Only  report docker containers in addition to
178       root stats
179
180
181       --docker-root="/var/lib/docker"      DEPRECATED: docker  root  is  read
182       from docker info (this is a fallback, default: /var/lib/docker)
183
184
185       --docker-tls=false      use TLS to connect to docker
186
187
188       --docker-tls-ca="ca.pem"      path to trusted CA
189
190
191       --docker-tls-cert="cert.pem"      path to client certificate
192
193
194       --docker-tls-key="key.pem"      path to private key
195
196
197       --enable-load-reader=false      Whether to enable cpu load reader
198
199
200       --event-storage-age-limit="default=0"      Max length of time for which
201       to store events (per type). Value is a comma separated list of key val‐
202       ues,  where the keys are event types (e.g.: creation, oom) or "default"
203       and the value is a duration. Default is applied  to  all  non-specified
204       event types
205
206
207       --event-storage-event-limit="default=0"       Max  number  of events to
208       store (per type). Value is a comma separated list of key values,  where
209       the  keys  are  event  types (e.g.: creation, oom) or "default" and the
210       value is an integer. Default is  applied  to  all  non-specified  event
211       types
212
213
214       --global-housekeeping-interval=1m0s      Interval between global house‐
215       keepings
216
217
218       --housekeeping-interval=10s      Interval between container  housekeep‐
219       ings
220
221
222       --insecure-skip-tls-verify=false      If true, the server's certificate
223       will not be checked for validity. This will make your HTTPS connections
224       insecure
225
226
227       --kubeconfig=""       Path  to  the  kubeconfig file to use for CLI re‐
228       quests.
229
230
231       --log-backtrace-at=:0      when logging hits line file:N, emit a  stack
232       trace
233
234
235       --log-cadvisor-usage=false       Whether to log the usage of the cAdvi‐
236       sor container
237
238
239       --log-dir=""      If non-empty, write log files in this directory
240
241
242       --log-file=""      If non-empty, use this log file
243
244
245       --log-file-max-size=1800      Defines the maximum size a log  file  can
246       grow to. Unit is megabytes. If the value is 0, the maximum file size is
247       unlimited.
248
249
250       --log-flush-frequency=5s      Maximum number  of  seconds  between  log
251       flushes
252
253
254       --logtostderr=true      log to standard error instead of files
255
256
257       --machine-id-file="/etc/machine-id,/var/lib/dbus/machine-id"
258            Comma-separated list of files to check  for  machine-id.  Use  the
259       first one that exists.
260
261
262       --match-server-version=false        Require  server  version  to  match
263       client version
264
265
266       -n, --namespace=""      If present, the namespace scope  for  this  CLI
267       request
268
269
270       --one-output=false      If true, only write logs to their native sever‐
271       ity level (vs also writing to each lower severity level
272
273
274       --password=""      Password for basic authentication to the API server
275
276
277       --profile="none"        Name   of   profile   to   capture.   One    of
278       (none|cpu|heap|goroutine|threadcreate|block|mutex)
279
280
281       --profile-output="profile.pprof"       Name  of  the  file to write the
282       profile to
283
284
285       --referenced-reset-interval=0      Reset interval for referenced  bytes
286       (container_referenced_bytes metric), number of measurement cycles after
287       which referenced bytes are cleared, if set to 0  referenced  bytes  are
288       never cleared (default: 0)
289
290
291       --request-timeout="0"       The length of time to wait before giving up
292       on a single server request. Non-zero values  should  contain  a  corre‐
293       sponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't time‐
294       out requests.
295
296
297       -s, --server=""      The address and port of the Kubernetes API server
298
299
300       --skip-headers=false      If true, avoid header  prefixes  in  the  log
301       messages
302
303
304       --skip-log-headers=false       If  true, avoid headers when opening log
305       files
306
307
308       --stderrthreshold=2      logs at or above this threshold go to stderr
309
310
311       --storage-driver-buffer-duration=1m0s      Writes in the storage driver
312       will  be  buffered  for  this duration, and committed to the non memory
313       backends as a single transaction
314
315
316       --storage-driver-db="cadvisor"      database name
317
318
319       --storage-driver-host="localhost:8086"      database host:port
320
321
322       --storage-driver-password="root"      database password
323
324
325       --storage-driver-secure=false      use secure connection with database
326
327
328       --storage-driver-table="stats"      table name
329
330
331       --storage-driver-user="root"      database username
332
333
334       --tls-server-name=""      Server name to  use  for  server  certificate
335       validation.  If  it  is  not provided, the hostname used to contact the
336       server is used
337
338
339       --token=""      Bearer token for authentication to the API server
340
341
342       --update-machine-info-interval=5m0s      Interval between machine  info
343       updates.
344
345
346       --user=""      The name of the kubeconfig user to use
347
348
349       --username=""      Username for basic authentication to the API server
350
351
352       -v, --v=0      number for the log level verbosity
353
354
355       --version=false      Print version information and quit
356
357
358       --vmodule=        comma-separated   list   of  pattern=N  settings  for
359       file-filtered logging
360
361
362       --warnings-as-errors=false      Treat warnings received from the server
363       as errors and exit with a non-zero exit code
364
365
366

EXAMPLE

368                # Set a deployment's nginx container image to 'nginx:1.9.1', and its busybox container image to 'busybox'.
369                kubectl set image deployment/nginx busybox=busybox nginx=nginx:1.9.1
370
371                # Update all deployments' and rc's nginx container's image to 'nginx:1.9.1'
372                kubectl set image deployments,rc nginx=nginx:1.9.1 --all
373
374                # Update image of all containers of daemonset abc to 'nginx:1.9.1'
375                kubectl set image daemonset abc *=nginx:1.9.1
376
377                # Print result (in yaml format) of updating nginx container image from local file, without hitting the server
378                kubectl set image -f path/to/file.yaml nginx=nginx:1.9.1 --local -o yaml
379
380
381
382

SEE ALSO

384       kubectl-set(1),
385
386
387

HISTORY

389       January  2015,  Originally compiled by Eric Paris (eparis at redhat dot
390       com) based on the kubernetes source material, but hopefully  they  have
391       been automatically generated since!
392
393
394
395Manuals                              User            KUBERNETES(1)(kubernetes)
Impressum