如何在特定命名空间中创建 K8S 部署?

fav*_*149 8 kubernetes kubernetes-pod

我在用 kubectl apply -f https://k8s.io/examples/controllers/nginx-deployment.yaml创建部署。

我想在我的命名空间中创建部署 examplenamespace

我怎样才能做到这一点?

Dáv*_*nár 10

有三种可能的解决方案。

  1. kubectl命令中指定命名空间:
kubectl apply -f https://k8s.io/examples/controllers/nginx-deployment.yaml -n my-namespace
Run Code Online (Sandbox Code Playgroud)
  1. yaml文件中指定命名空间:
  apiVersion: apps/v1
  kind: Deployment
  metadata:
    name: my-deployment
    namespace: my-namespace
Run Code Online (Sandbox Code Playgroud)
  1. 更改默认命名空间~/.kube/config
apiVersion: v1
kind: Config
clusters:
- name: "k8s-dev-cluster-01"
  cluster:
    server: "https://example.com/k8s/clusters/abc"
    namespace: "my-namespace"
Run Code Online (Sandbox Code Playgroud)


Ole*_*zov 8

通过添加-n namespace到您已经拥有的命令。它也适用于其他类型的资源。

kubectl apply -f https://k8s.io/examples/controllers/nginx-deployment.yaml -n namespacename
Run Code Online (Sandbox Code Playgroud)