k8s 版本 V1.13
参考
kubectl run
Kubernetes kubectl run 命令详解
kubectl run
语法:
$ run NAME --image=image [–env=“key=value”] [–port=port] [–replicas=replicas] [–dry-run=bool] [–overrides=inline-json] [–command] – [COMMAND] [args…]
示例:
启动nginx实例。
kubectl run nginx --image=nginx
启动hazelcast实例,暴露容器端口 5701。
kubectl run hazelcast --image=hazelcast --port=5701
启动hazelcast实例,在容器中设置环境变量“DNS_DOMAIN = cluster”和“POD_NAMESPACE = default”。
kubectl run hazelcast --image=hazelcast --env="DNS_DOMAIN=cluster" --env="POD_NAMESPACE=default"
启动nginx实例,设置副本数5。
kubectl run nginx --image=nginx --replicas=5
生成器
您可以使用带有 --generator 参数的 kubectl run 命令创建如下资源:
资源 | kubectl 命令 |
---|---|
Pod | kubectl run --generator=run-pod/v1 |
Replication controller | kubectl run --generator=run/v1 |
Deployment | kubectl run --generator=extensions/v1beta1 |
-同时获得端点(默认) | kubectl run --generator=deployment/v1beta1 |
Deployment | kubectl run --generator=apps/v1beta1 |
-端点(推荐) | kubectl run --generator=deployment/apps.v1beta1 |
Job | kubectl run --generator=job/v1 |
CronJob | kubectl run --generator=batch/v1beta1 |
-端点(默认) | kubectl run --generator=cronjob/v1beta1 |
CronJob | kubectl run --generator=batch/v2alpha1 |
-端点(废弃) | kubectl run --generator=cronjob/v2alpha1 |
如果不指定 generator 参数,其他参数将提示您使用特定的生成器。下表列出了强制您使用特定生成器的参数,具体取决于集群的版本:
生成的资源 | 集群版本 v1.4 及以后版本 | 集群版本 v1.3 | 集群版本 v1.2 | 集群版本 v1.1 及更早 |
---|---|---|---|---|
Pod | --restart=Never | --restart=Never | --generator=run-pod/v1 | --restart=OnFailure 或 --restart=Never |
Replication Controller | --generator=run/v1 | --generator=run/v1 | --generator=run/v1 | --restart=Always |
Deployment | --restart=Always | --restart=Always | --restart=Always | N/A |
Job | --restart=OnFailure | --restart=OnFailure | --restart=OnFailure 或 --restart=Never | N/A |
Cron Job | --schedule= | N/A | N/A | N/A |
Note:
只有在未指定任何参数时,这些参数才使用默认生成器
。 这意味着,当您将 --generator 与其他参数组合时,随后指定的生成器不会更改。
1.配置了–generator ,优先使用该配置
2.没有配置–generator ,取决于其他参数,譬如–restart=always等
例如,在集群版本 v1.4 中,如果最初指定了 --restart=always,则会创建 Deployment;如果后来指定了 --restart=always 和 --generator=run/v1,则会创建 Replication Controller。