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

EXAMPLE

367                # To proxy all of the kubernetes api and nothing else, use:
368
369                $ kubectl proxy --api-prefix=/
370
371                # To proxy only part of the kubernetes api and also some static files:
372
373                $ kubectl proxy --www=/my/files --www-prefix=/static/ --api-prefix=/api/
374
375                # The above lets you 'curl localhost:8001/api/v1/pods'.
376
377                # To proxy the entire kubernetes api at a different root, use:
378
379                $ kubectl proxy --api-prefix=/custom/
380
381                # The above lets you 'curl localhost:8001/custom/api/v1/pods'
382
383                # Run a proxy to kubernetes apiserver on port 8011, serving static content from ./local/www/
384                kubectl proxy --port=8011 --www=./local/www/
385
386                # Run a proxy to kubernetes apiserver on an arbitrary local port.
387                # The chosen port for the server will be output to stdout.
388                kubectl proxy --port=0
389
390                # Run a proxy to kubernetes apiserver, changing the api prefix to k8s-api
391                # This makes e.g. the pods api available at localhost:8001/k8s-api/v1/pods/
392                kubectl proxy --api-prefix=/k8s-api
393
394
395
396

SEE ALSO

398       kubectl(1),
399
400
401

HISTORY

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