1KUBERNETES(1)                      Jan 2015                      KUBERNETES(1)
2
3
4

NAME

6       kubectl proxy - Run a proxy to the Kubernetes API server
7
8
9

SYNOPSIS

11       kubectl proxy [OPTIONS]
12
13
14

DESCRIPTION

16       Creates a proxy server or application-level gateway between localhost
17       and the Kubernetes API Server. It also allows serving static content
18       over specified HTTP path. All incoming data enters through one port and
19       gets forwarded to the remote kubernetes API Server port, except for the
20       path matching the static content path.
21
22
23

OPTIONS

25       --accept-hosts="^localhost$,^127\.0\.0\.1$,^\[::1\]$"
26           Regular expression for hosts that the proxy should accept.
27
28
29       --accept-paths="^.*"
30           Regular expression for paths that the proxy should accept.
31
32
33       --address="127.0.0.1"
34           The IP address on which to serve on.
35
36
37       --api-prefix="/"
38           Prefix to serve the proxied API under.
39
40
41       --disable-filter=false
42           If true, disable request filtering in the proxy. This is dangerous,
43       and can leave you vulnerable to XSRF attacks, when used with an
44       accessible port.
45
46
47       --keepalive=0s
48           keepalive specifies the keep-alive period for an active network
49       connection. Set to 0 to disable keepalive.
50
51
52       -p, --port=8001
53           The port on which to run the proxy. Set to 0 to pick a random port.
54
55
56       --reject-methods="^$"
57           Regular expression for HTTP methods that the proxy should reject
58       (example --reject-methods='POST,PUT,PATCH').
59
60
61       --reject-paths="^/api/./pods/./exec,^/api/./pods/./attach"
62           Regular expression for paths that the proxy should reject. Paths
63       specified here will be rejected even accepted by --accept-paths.
64
65
66       -u, --unix-socket=""
67           Unix socket on which to run the proxy.
68
69
70       -w, --www=""
71           Also serve static files from the given directory under the
72       specified prefix.
73
74
75       -P, --www-prefix="/static/"
76           Prefix to serve static files under, if static file directory is
77       specified.
78
79
80

OPTIONS INHERITED FROM PARENT COMMANDS

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

EXAMPLE

384                # To proxy all of the kubernetes api and nothing else, use:
385
386                $ kubectl proxy --api-prefix=/
387
388                # To proxy only part of the kubernetes api and also some static files:
389
390                $ kubectl proxy --www=/my/files --www-prefix=/static/ --api-prefix=/api/
391
392                # The above lets you 'curl localhost:8001/api/v1/pods'.
393
394                # To proxy the entire kubernetes api at a different root, use:
395
396                $ kubectl proxy --api-prefix=/custom/
397
398                # The above lets you 'curl localhost:8001/custom/api/v1/pods'
399
400                # Run a proxy to kubernetes apiserver on port 8011, serving static content from ./local/www/
401                kubectl proxy --port=8011 --www=./local/www/
402
403                # Run a proxy to kubernetes apiserver on an arbitrary local port.
404                # The chosen port for the server will be output to stdout.
405                kubectl proxy --port=0
406
407                # Run a proxy to kubernetes apiserver, changing the api prefix to k8s-api
408                # This makes e.g. the pods api available at localhost:8001/k8s-api/v1/pods/
409                kubectl proxy --api-prefix=/k8s-api
410
411
412
413

SEE ALSO

415       kubectl(1),
416
417
418

HISTORY

420       January 2015, Originally compiled by Eric Paris (eparis at redhat dot
421       com) based on the kubernetes source material, but hopefully they have
422       been automatically generated since!
423
424
425
426Eric Paris                  kubernetes User Manuals              KUBERNETES(1)
Impressum