The kubecfg
command line tools is used to interact with the Kubernetes HTTP API.
kubecfg [options] run <image> <replicas> <controller-name>
Creates a Kubernetes ReplicaController object.
[options]
are described in the Options section.<image>
is the Docker image to use.<replicas>
is the number of replicas of the container to create.<controller-name>
is the name to assign to this new ReplicaController.
kubecfg -p 8080:80 run dockerfile/nginx 2 myNginxController
kubecfg [options] resize <controller-name> <new-size>
Changes the desired number of replicas, causing replicas to be created or deleted.
[options]
are described in the Options section.
kubecfg resize myNginxController 3
kubecfg [options] stop <controller-name>
Stops a controller by setting its desired size to zero. Syntactic sugar on top of resize.
[options]
are described in the Options section.
kubecfg [options] rm <controller-name>
Delete a replication controller. The desired size of the controller must be zero, by
calling either kubecfg resize <controller-name> 0
or kubecfg stop <controller-name>
.
[options]
are described in the Options section.
Kubecfg also supports raw access to the basic restful requests. There are four different resources you can acccess:
pods
replicationControllers
services
minions
- -yaml : output in YAML format
- -json : output in JSON format
- -c : Accept a file in JSON or YAML for POST/PUT
Raw access to a RESTful GET request.
kubecfg [options] get pods/pod-abc-123
Raw access to a RESTful LIST request.
kubecfg [options] list pods
Raw access to a RESTful POST request.
kubecfg <-c some/body.[json|yaml]> [options] create pods
Raw access to a RESTful PUT request.
kubecfg <-c some/body.[json|yaml]> [options] update pods/pod-abc-123
Raw access to a RESTful DELETE request.
kubecfg [options] delete pods/pod-abc-123
kubecfg -h [-c config/file.json] [-p :,..., :] <method>
Kubernetes REST API:
kubecfg [OPTIONS] get|list|create|delete|update <minions|pods|replicationControllers|services>[/<id>]
Manage replication controllers:
kubecfg [OPTIONS] stop|rm|rollingupdate <controller>
kubecfg [OPTIONS] run <image> <replicas> <controller>
kubecfg [OPTIONS] resize <controller> <replicas>
-V=true|false
: Print the version number.-alsologtostderr=true|false
: log to standard error as well as files-auth="/path/to/.kubernetes_auth"
: Path to the auth info file. Only used if doing https.-c="/path/to/config_file"
: Path to the config file.-h=""
: The host to connect to.-json=true|false
: If true, print raw JSON for responses-l=""
: Selector (label query) to use for listing-log_backtrace_at=:0
: when logging hits line file:N, emit a stack trace-log_dir=""
: If non-empty, write log files in this directory-log_flush_frequency=5s
: Maximum number of seconds between log flushes-logtostderr=true|false
: log to standard error instead of files-p=""
: The port spec, comma-separated list of<external>:<internal>,...
-proxy=true|false
: If true, run a proxy to the API server-s=-1
: If positive, create and run a corresponding service on this port, only used with 'run'-stderrthreshold=0
: logs at or above this threshold go to stderr-template=""
: If present, parse this string as a golang template and use it for output printing-template_file=""
: If present, load this file as a golang template and use it for output printing-u=1m0s
: Update interval period-v=0
: log level for V logs. See Logging Conventions for details-verbose=true|false
: If true, print extra information-vmodule=""
: comma-separated list of pattern=N settings for file-filtered logging-www=""
: If -proxy is true, use this directory to serve static files-yaml=true|false
: If true, print raw YAML for responses