目录

 


一 Pod定义详解

1.1 完整Pod定义文件

复制代码
  1 apiVersion: v1			#必选,版本号,例如v1,版本号必须可以用 kubectl api-versions 查询到  2 kind: Pod				#必选,Pod  3 metadata:				#必选,元数据  4   name: string			#必选,Pod名称,需符合RFC 1035规范  5   namespace: string			#必选,Pod所属的命名空间,默认为"default"  6   labels:				#自定义标签  7     - name: string			#自定义标签名字  8   annotations:			#自定义注释列表  9     - name: string 10 spec:				#必选,Pod中容器的详细定义 11   containers:			#必选,Pod中容器列表 12   - name: string			#必选,容器名称,需符合RFC 1035规范 13     image: string			#必选,容器的镜像名称 14     imagePullPolicy: [ Always|Never|IfNotPresent ]	#获取镜像的策略,Alawys表示每次都尝试下载镜像,IfnotPresent表示优先使用本地镜像,否则下载镜像,Nerver表示仅使用本地镜像 15     command: [string]		#容器的启动命令列表,如不指定,使用打包时使用的启动命令 16     args: [string]			#容器的启动命令参数列表 17     workingDir: string		#容器的工作目录 18     volumeMounts:			#挂载到容器内部的存储卷配置 19     - name: string			#引用pod定义的共享存储卷的名称,需用volumes[]部分定义的的卷名 20       mountPath: string		#存储卷在容器内mount的绝对路径,应少于512字符 21       readOnly: boolean		#是否为只读模式,默认为读写模式 22     ports:				#需要暴露的端口库号列表 23     - name: string			#端口的名称 24       containerPort: int		#容器需要监听的端口号 25       hostPort: int		        #容器所在主机需要监听的端口号,默认与Container相同 26       protocol: string		#端口协议,支持TCP和UDP,默认TCP 27     env:				#容器运行前需设置的环境变量列表 28     - name: string			#环境变量名称 29       value: string		        #环境变量的值 30     resources:			#资源限制和请求的设置 31       limits:			#资源限制的设置 32         cpu: string		        #CPU的限制,单位为core数,将用于docker run --cpu-shares参数 33         memory: string		#内存限制,单位可以为Mib/Gib,将用于docker run --memory参数 34       requests:			#资源请求的设置 35         cpu: string		        #CPU请求,容器启动的初始可用数量 36         memory: string		#内存请求,容器启动的初始可用数量 37     livenessProbe:			#对Pod内各容器健康检查的设置,当探测无响应几次后将自动重启该容器,检查方法有exec、httpGet和tcpSocket,对一个容器只需设置其中一种方法即可 38       exec:			        #对Pod容器内检查方式设置为exec方式 39         command: [string]		#exec方式需要制定的命令或脚本 40