【问题标题】:How to create a Kubernetes Deployment with the 'kubectl run' command?如何使用“kubectl run”命令创建 Kubernetes 部署?
【发布时间】:2021-09-30 15:11:49
【问题描述】:

根据我阅读的article,在使用“kubectl run”命令时,

  • --restart 始终创建部署,
  • --restart 从不创建 pod
  • --restart OnFailure 创建作业

但是,当我在 Minikube 安装上尝试这样做时,它正在创建一种资源:Pod

k run ngingx --image=nginx -o yaml --dry-run=client --restart Always
apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: null
  labels:
    run: ngingx
  name: ngingx
spec:
  containers:
  - image: nginx
    name: ngingx
    resources: {}
  dnsPolicy: ClusterFirst
  restartPolicy: Always
status: {}

该功能已被弃用还是我做错了什么?

谢谢

【问题讨论】:

    标签: kubernetes kubectl


    【解决方案1】:

    应该是这样的

    kubectl create deployment ngingx --image=nginx -o yaml --dry-run=client

    不,restart: Always 不会创建 pod 或部署它是关于容器重启策略,该策略用于在 pod 崩溃时重新启动容器,它会尝试重新启动。

    【讨论】:

    • 谢谢。但仍然试图了解我提到的功能是否以前存在并且不再有效?
    • 我认为在 kubernetes 1.18 或 1.17 之前,kubectl cli-tool 确实会默认创建一个 pod,并在您添加选项 --restart=Always 时进行部署。但是,从那时起,kubectl 仅使用 kubectl run 创建 pod,而对于您使用 kubectl create $resourcename 的所有其他内容
    猜你喜欢
    • 2019-01-09
    • 1970-01-01
    • 2016-09-30
    • 1970-01-01
    • 1970-01-01
    • 2020-08-07
    • 1970-01-01
    • 2021-10-08
    • 2020-10-31
    相关资源
    最近更新 更多