我刚刚开始学习 Kubernetes,并使用命令 kubectl run demo1-k8s --image=demo1-k8s:1.0 --port 8080 --image-pull-policy=Never
创建了部署。我收到了部署已创建的消息。但是当我列出部署 (kubectl get deployments
) 时,部署并未列出,而是收到消息 No resources found in default namespace.
有什么想法吗?
答案 0 :(得分:2)
从 docs kubectl run
创建一个 pod 而不是部署。因此,您可以使用 kubectl get pods
命令来检查 pod 是否已创建。要创建部署,请使用 kubectl create deployment
作为记录的 here
答案 1 :(得分:0)
要创建部署,您需要使用 kubectl create deployment
。使用 kubectl run
将创建一个 pod。
kubectl create deployment demo1-k8s --image=demo1-k8s:1.0
模板就像kubectl create deployment <deployment-name> --<flags>
但是如果您使用 yaml
来创建部署或其他 k8s 资源总是更好。只需创建一个 .yaml
文件。
deploy.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo1-k8s
spec:
selector:
matchLabels:
app: demo1-k8s
replicas: 4 # Update the replicas from 2 to 4
template:
metadata:
labels:
app: demo1-k8s
spec:
containers:
- name: demo1-k8s
image: demo1-k8s:1.0
imagePullPolicy: Never
ports:
- containerPort: 8080
运行这个命令kubectl apply -f deploy.yaml