Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker Kubectl始终以相同的名称生成pod_Docker_Kubernetes_Containers_Kubectl - Fatal编程技术网

Docker Kubectl始终以相同的名称生成pod

Docker Kubectl始终以相同的名称生成pod,docker,kubernetes,containers,kubectl,Docker,Kubernetes,Containers,Kubectl,我是库伯内特斯的新手。我们能确定吊舱的名字吗?如果我们只创建一个副本,那么我希望始终使用相同的名称生成。它一直在生成不同的名称。如果我想查看容器的日志,每次我都需要用新生成的pod名称更改命令 下面是YAML文件的示例 apiVersion: extensions/v1beta1 kind: Deployment metadata: name: nagendra-app-deploy1 spec: replicas: 1 template: metadata: n

我是库伯内特斯的新手。我们能确定吊舱的名字吗?如果我们只创建一个副本,那么我希望始终使用相同的名称生成。它一直在生成不同的名称。如果我想查看容器的日志,每次我都需要用新生成的pod名称更改命令

下面是YAML文件的示例

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: nagendra-app-deploy1
spec:
  replicas: 1
  template:
    metadata:
      name: nagendra-app-deploy1
      labels:
        app: nagendra-app-deploy1
    spec:
      containers:
      - name: nagendra-spring-app1
        image: springbootapp:v1
        ports:
        - containerPort: 8080
      - name: nagendra-myImage
        image: myImage:v2

无法为部署生成的pod生成相同的名称。就命令而言,您可以使用
kubectl get po-l app=nagendra-app-deploy1-o jsonpath={.items[0].metadata.name}
获取pod的名称。

无法为部署生成的pod生成相同的名称。就命令而言,您可以使用
kubectl get po-l app=nagendra-app-deploy1-o jsonpath={.items[0].metadata.name}
获取pod的名称。

下面是我用来获取部署日志的技巧

kubectl日志-f$(kubectl get deployment-o name | grep deployment | u name | head-n1)

例如,在您的情况下,我只需要更改部署名称,这是非常静态的


kubectl日志-f$(kubectl get deployment-o name | grep nagendra-app-deploy1 | head-n1)

下面是我用来获取部署日志的技巧

kubectl日志-f$(kubectl get deployment-o name | grep deployment | u name | head-n1)

例如,在您的情况下,我只需要更改部署名称,这是非常静态的


kubectl logs-f$(kubectl get deployment-o name | grep nagendra-app-deploy1 | head-n1)

如果您不需要部署(不需要滚动更新,不需要监视pod是否启动的副本集),您可以简单地部署pod


一个简单的pod将在更新过程中保留其名称。

如果您不需要部署(不需要滚动更新,也不需要复制集来监视pod是否启动),您可以简单地部署一个pod


一个简单的pod将在更新过程中保留其名称。

改用StatefulSet。这将导致吊舱被命名为相同的。我如何才能做到这一点?您能再详细说明一下吗?StatefulSet的文档可以在以下位置找到:嗨,如果您想检查POD的日志,您可以使用部署名称运行命令,例如
kubectl logs-f deployment/DEPLOY\u name
。在您的情况下,应该是
kubectl日志-f deployment/nagendra-app-deploy1
使用StatefulSet。这将导致吊舱被命名为相同的。我如何才能做到这一点?您能再详细说明一下吗?StatefulSet的文档可以在以下位置找到:嗨,如果您想检查POD的日志,您可以使用部署名称运行命令,例如
kubectl logs-f deployment/DEPLOY\u name
。在您的情况下,应该是
kubectl logs-f deployment/nagendra-app-deploy1
谢谢您的回复并将您的想法放在这里。或者使用:
kubectl get pod-l app=nagendra-app-deploy1 | awk'FNR==2{print$1}“
如果只有一个实例,感谢您的回复并将您的想法放在这里。或者使用:
kubectl get pod-l app=nagendra-app-deploy1 | awk'FNR==2{print$1}”
如果只有一个实例