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