apiVersion: v1 #版本號
kind: Pod # kind定義這個一個pod資源
metadata:
name: myweb #定義pod名字
namespace: string #命名空間
labels: #定義標簽
name:myweb
spec: #定義pod里容器屬性
containers:
- name: myweb #定義容器名
image: kuberguide/tomcat-app:v1 #定義容器使用鏡像
imagePullPolicy:[Always|Never|IfNotPresent]每次都重新下載鏡像|僅使用本地鏡像|先使用本地鏡像,不存在再下載鏡像。默認每次重新下載鏡像Always
command:[string] #容器啟動命令列表
args:[string]#容器啟動命令參數列表
workingDir:string #容器工作目錄
volumeMounts: #掛載到容器的存儲卷
- name: string #使用pod定義的共享存儲卷名稱
mountPath:string 存儲卷在容器內掛載的絕對路徑,應少於512字符
ports: #定義容器開放暴露的端口號列表
- containerPort: 8080 #定義pod對外開放的服務端口號,容器要監聽的端口
env: #定義容器變量列表
- name: MYSQL_SERVICE_HOST
value: 'mysql'
resources: #資源限制設置
limits:
cpu: string #容器啟動后最多可用CPU核數。
memory:string #容器啟動最多可用內存數 單位MiB、GiB
requests:#最低啟動限制設置
cpu: string #最低容器啟動可用CPU核數。
memory:string #最低容器啟動可用內存數 單位MiB、GiB
restartPolicy:[Always|Never|OnFailure]#pod重啟策略,一旦終止立即重啟|終止后報告錯誤后不再重啟|只有非0錯誤碼終止才重啟其他不重啟。默認Always
nodeSelector: #設置調度pod到指定這里配置的labe的Node上
標簽key:標簽value
imagePullSecrets: #拉取鏡像時使用的秘鑰信息
- key:string
volumes: #pod的共享存儲卷列表
- name: string #存儲卷名,唯一
emptyDir:{} #存儲卷類型,生命周期和pod相同,臨時目錄
hostPath: #存儲卷類型,表示從宿主機目錄上掛載
path: string #使用的宿主機目錄
secret: #存儲卷類型。
secretName: string
items:
- key: string
path: stirng
configMap: #存儲卷類型
name: string
items:
- key: string
path: sting
livenessProbe: #Pod內容器健康檢查設置,無響應之后自動重啟該容器
exec: #檢查類型,僅需使用其中一種。
command:[string] #命令或腳本
httpGet: #檢查類型,僅需使用其中一種。
path: string
port: number
host: string
scheme: string
httpHeaders:
- name: string
value: string
tcpSocket: #檢查類型,僅需使用其中一種
port: number
initialDelaySeconds:0 #容器重啟完成后,首次探測的間隔時間單位秒
timeoutSeconds:0 #容器探測等待響應超時時間,單位秒。默認1秒,超時認為不健康重啟
periodSeconds:0 #容器探測間隔時間,單位秒,默認10秒。
successThreshold:0
failureThreshold:0
securityContext:
privileged: false