zoukankan      html  css  js  c++  java
  • [Kubernetes] Defining a Pod with YAML

    1. Define a yml file: nginx.pod.yml:

    apiVersion: v1
    kind: Pod
    metadata:
      name: my-nginx
      labels:
        app: nginx
        rel: stable
    
    spec:
      containers:
      - name: my-nginx
        image: nginx:alpine
        ports:
        - containerPort: 80
        resources:

    It creates my-nginx pod.

    2. We the yml file with kubectl:

    kubectl create -f nginx.pod.yml --save-config   

    We use '--save-config' option. 

    If we run:

    kubectl get pods my-nginx -o yaml

    It outpus the configurations for my-nginx pod:

    ...
    metadata:
      annotations:
        kubectl.kubernetes.io/last-applied-configuration: |
          {"apiVersion":"v1","kind":"Pod","metadata":{"annotations":{},"labels":{"app":"nginx","rel":"stable"},"name":"my-nginx","namespace":"default"},"spec":{"containers":[{"image":"nginx:alpine","name":"my-nginx","ports":[{"containerPort":80}],"resources":null}]}}
    ...

    It save the the configuration for this pod, so later if I udpated the yml file, it will diff the changes, and only apply the changes to the pod.

    3. apply vs create:

    kubectl apply -f nginx.pod.yml  // pod/my-nginx configured

    The nice thing of 'apply' is: if the pod is not there, it will create the resource, if the pod is there, then it will update the resource.

    4. Get into the pod:

    kubectl exec my-nginx -it sh

    Quite you can type:

    exit

    5. Delete the pod:

    This time actually we only have pod, without develoyment, so we can delete the pod by:

    kubectl delete pod my-nginx
    kubectl delete -f nginx.pod.yml
  • 相关阅读:
    [Trie][并查集]JZOJ 5822 量子纠缠
    [模拟]JZOJ 5820 非法输入
    SAM模板
    [树形DP]JZOJ 5819 大逃杀
    [MST][dij]JZOJ 5818 做运动
    [暴力]JZOJ 5817 抄代码
    [概率期望][树形DP][LCA]JZOJ 5814 树
    认证组件
    注册接口
    视图家族 & 路由组件
  • 原文地址:https://www.cnblogs.com/Answer1215/p/11749641.html
Copyright © 2011-2022 走看看