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

NAME

9       kubectl create - Create a resource from a file or from stdin.
10
11
12

SYNOPSIS

14       kubectl create [OPTIONS]
15
16
17

DESCRIPTION

19       Create a resource from a file or from stdin.
20
21
22       JSON and YAML formats are accepted.
23
24
25

OPTIONS

27       --allow-missing-template-keys=true       If  true, ignore any errors in
28       templates when a field or map key is missing in the template. Only  ap‐
29       plies to golang and jsonpath output formats.
30
31
32       --dry-run="none"       Must be "none", "server", or "client". If client
33       strategy, only print the object that would be sent, without sending it.
34       If  server  strategy, submit server-side request without persisting the
35       resource.
36
37
38       --edit=false      Edit the API resource before creating
39
40
41       --field-manager="kubectl-create"      Name of the manager used to track
42       field ownership.
43
44
45       -f,  --filename=[]       Filename, directory, or URL to files to use to
46       create the resource
47
48
49       -k, --kustomize=""      Process the kustomization directory. This  flag
50       can't be used together with -f or -R.
51
52
53       -o,  --output=""       Output  format.  One  of: json|yaml|name|go-tem‐
54       plate|go-template-file|template|templatefile|jsonpath|json‐
55       path-as-json|jsonpath-file.
56
57
58       --raw=""      Raw URI to POST to the server.  Uses the transport speci‐
59       fied by the kubeconfig file.
60
61
62       --record=false      Record current kubectl command in the resource  an‐
63       notation.  If  set to false, do not record the command. If set to true,
64       record the command. If not set, default to updating the existing  anno‐
65       tation value only if one already exists.
66
67
68       -R, --recursive=false      Process the directory used in -f, --filename
69       recursively. Useful when you want to manage related manifests organized
70       within the same directory.
71
72
73       --save-config=false       If  true, the configuration of current object
74       will be saved in its annotation. Otherwise, the annotation will be  un‐
75       changed.  This flag is useful when you want to perform kubectl apply on
76       this object in the future.
77
78
79       -l, --selector=""      Selector (label query) to  filter  on,  supports
80       '=', '==', and '!='.(e.g. -l 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       --validate=true      If true, use a schema to validate the input before
89       sending it
90
91
92       --windows-line-endings=false      Only  relevant  if  --edit=true.  De‐
93       faults to the line ending native to your platform.
94
95
96

OPTIONS INHERITED FROM PARENT COMMANDS

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

EXAMPLE

376                # Create a pod using the data in pod.json.
377                kubectl create -f ./pod.json
378
379                # Create a pod based on the JSON passed into stdin.
380                cat pod.json | kubectl create -f -
381
382                # Edit the data in docker-registry.yaml in JSON then create the resource using the edited data.
383                kubectl create -f docker-registry.yaml --edit -o json
384
385
386
387

SEE ALSO

389       kubectl(1),    kubectl-create-clusterrole(1),   kubectl-create-cluster‐
390       rolebinding(1), kubectl-create-configmap(1), kubectl-create-cronjob(1),
391       kubectl-create-deployment(1),  kubectl-create-ingress(1),  kubectl-cre‐
392       ate-job(1), kubectl-create-namespace(1),  kubectl-create-poddisruption‐
393       budget(1),   kubectl-create-priorityclass(1),  kubectl-create-quota(1),
394       kubectl-create-role(1),   kubectl-create-rolebinding(1),   kubectl-cre‐
395       ate-secret(1),   kubectl-create-service(1),   kubectl-create-serviceac‐
396       count(1),
397
398
399

HISTORY

401       January 2015, Originally compiled by Eric Paris (eparis at  redhat  dot
402       com)  based  on the kubernetes source material, but hopefully they have
403       been automatically generated since!
404
405
406
407Manuals                              User            KUBERNETES(1)(kubernetes)
Impressum