apiVersion: apps/v1 #與k8s集群版本有關,使用 kubectl api-versions 即可查看當前集群支持的版本
kind: Deployment #該配置的類型,我們使用的是 Deployment
metadata: #譯名為元數據,即 Deployment 的一些基本屬性和信息
name: nginx-deployment #Deployment 的名稱
labels: #標簽,可以靈活定位一個或多個資源,其中key和value均可自定義,可以定義多組,目前不需要理解
app: nginx #為該Deployment設置key為app,value為nginx的標簽
spec: #這是關於該Deployment的描述,可以理解為你期待該Deployment在k8s中如何使用
replicas: 1 #使用該Deployment創建一個應用程序實例
selector: #標簽選擇器,與上面的標簽共同作用,目前不需要理解
matchLabels: #選擇包含標簽app:nginx的資源
app: nginx
template: #這是選擇或創建的Pod的模板
metadata: #Pod的元數據
labels: #Pod的標簽,上面的selector即選擇包含標簽app:nginx的Pod
app: nginx
spec: #期望Pod實現的功能(即在pod中部署)
containers: #生成container,與docker中的container是同一種
- name: nginx #container的名稱
image: nginx:1.7.9 #使用鏡像nginx:1.7.9創建container,該container默認80端口可訪問