kubectl create
通过配置文件名或 stdin 创建一个集群资源对象。
支持 JSON 和 YAML 格式的文件。
语法
$ create -f FILENAME
示例
通过 pod.json 文件创建一个 pod。
kubectl create -f ./pod.json
通过 stdin 的 JSON 创建一个 pod。
cat pod.json | kubectl create -f -
API 版本为 v1 的 JSON 格式的 docker-registry.yaml 文件创建资源。
kubectl create -f docker-registry.yaml --edit --output-version=v1 -o json
kubectl create clusterrole
创建一个 ClusterRole。
语法
$ clusterrole NAME --verb=verb --resource=resource.group [--resource-name=resourcename] [--dry-run]
示例
创建一个名为 “pod-reader” 的 ClusterRole,允许用户在 pod 上执行 “get”,“watch” 和 “list”
kubectl create clusterrole pod-reader --verb=get,list,watch --resource=pods
创建一个名为 “pod-reader” 的 ClusterRole,其中指定了 ResourceName
kubectl create clusterrole pod-reader --verb=get,list,watch --resource=pods --resource-name=readablepod --resource-name=anotherpod
在指定的 API Group 中创建为 "foo" 的 ClusterRole
kubectl create clusterrole foo --verb=get,list,watch --resource=rs.extensions
创建一个名为 “foo” 的 ClusterRole,并指定 SubResource
kubectl create clusterrole foo --verb=get,list,watch --resource=pods,pods/status
使用指定的 NonResourceURL 创建名称 “foo” 的 ClusterRole
kubectl create clusterrole "foo" --verb=get --non-resource-url=/logs/*
kubectl create clusterrolebinding
为特定的 ClusterRole 创建 ClusterRoleBinding。
语法
$ clusterrolebinding NAME --clusterrole=NAME [--user=username] [--group=groupname] [--serviceaccount=namespace:serviceaccountname] [--dry-run]
示例
在集群范围将 cluster-admin ClusterRole 授予用户 user1,user2 和 group1。
kubectl create clusterrolebinding cluster-admin --clusterrole=cluster-admin --use
kubectl create configmap
根据配置文件、目录或指定的 literal-value 创建 configmap 。
configmap 用来保存一个或多个 key/value 信息。
当基于配置文件创建 configmap 时,key 将默认为文件的基础名称,value 默认为文件文本内容。如果基本名称的 key 无效,则可以指定另一个 key。
当基于目录创建 configmap 时,key 还是文件的基础名称,目录中每个配置文件名都被设置为 key,文件内容设置为 value。
语法
$ configmap NAME [--from-file=[key=]source] [--from-literal=key1=value1] [--dry-run]
示例
根据文件创建一个名为 my-config 的 configmap
kubectl create configmap my-config --from-file=path/to/bar
使用指定的 keys 创建一个名为 my-config 的 configmap
kubectl create configmap my-config --from-file=key1=/path/to/bar/file1.txt --from-file=key2=/path/to/bar/file2.txt
使用 key1 = config1 和 key2 = config2 创建一个名为 my-config 的 configmap
kubectl create configmap my-config --from-literal=key1=config1 --from-literal=key2=config2
从文件中的 key = value 对创建一个名为 my-config 的 configmap
kubectl create configmap my-config --from-file=path/to/bar
从 env 文件创建一个名为 my-config 的 configmap
kubectl create configmap my-config --from-env-file=path/to/bar.env
kubectl create deployment
创建具有指定名称的 deployment 。
语法
$ deployment NAME --image=image [--dry-run]
示例
创建一个名为 my-dep 的 deployment,运行 busybox 镜像。
kubectl create deployment my-dep --image=busybox
kubectl create namespace
创建一个具有指定名称的 namespace。
语法
$ namespace NAME [--dry-run]
示例
创建一个名为 my-namespace 的 namespace
kubectl create namespace my-namespace