首页 > 其他分享 >yaml注解

yaml注解

时间:2022-09-19 09:22:19浏览次数:77  
标签:容器 name yaml command 注解 挂载 资源

yaml注解

apiVersion: v1 #指定api版本,此值必须在kubectl apiversion中
kind: Pod #指定创建资源的角色/类型
metadata: #资源的元数据/属性
  name: test-pod #资源的名字,在同一个namespace中必须唯一
  labels: #设定资源的标签
    k8s-app: apache
    version: v1
  annotations:            #自定义注解列表
    - name: String        #自定义注解名字
spec: #specification of the resource content 指定该资源的内容
  restartPolicy: Always #表明该容器一直运行,默认k8s的策略,在此容器退出后,会立即创建一个相同的容器
  nodeSelector:     #节点选择,先给主机打标签kubectl label nodes kube-node1 zone=node1
    zone: node1
  containers:
  - name: test-pod #容器的名字
    image: 10.192.21.18:5000/test/chat:latest #容器使用的镜像地址
    imagePullPolicy: Never # Kubernetes 拉取镜像策略
    command: ['sh'] #启动容器的运行命令,将覆盖容器中的Entrypoint,对应Dockefile中的ENTRYPOINT
    args: ["$(str)"] #启动容器的命令参数,对应Dockerfile中CMD参数
    env: #指定容器中的环境变量
    - name: str #变量的名字
      value: "/etc/run.sh" #变量的值
    resources: #资源管理
      requests: #容器运行时,最低资源需求,也就是说最少需要多少资源容器才能正常运行
        cpu: 0.1 #CPU资源(核数),两种方式,浮点数或者是整数+m,0.1=100m,最少值为0.001核(1m)
        memory: 32Mi #内存使用量
      limits: #资源限制
        cpu: 0.5
        memory: 1000Mi
    ports:
    - containerPort: 80 #容器开发对外的端口
      name: httpd  #名称
      protocol: TCP
    livenessProbe: #pod内容器健康检查的设置
      httpGet: #通过httpget检查健康,返回200-399之间,则认为容器正常
        path: / #URI地址
        port: 80
        scheme: HTTP
      initialDelaySeconds: 180 #表明第一次检测在容器启动后多长时间后开始
      timeoutSeconds: 5 #检测的超时时间
      periodSeconds: 15  #检查间隔时间
      #也可以用这种方法
      #exec: 执行命令的方法进行监测,如果其退出码不为0,则认为容器正常
      #  command:
      #    - cat
      #    - /tmp/health
      #也可以用这种方法
      #tcpSocket: //通过tcpSocket检查健康
      #  port: number
    lifecycle: #生命周期管理
      postStart: #容器运行之前运行的任务
        exec:
          command:
            - 'sh'
            - 'yum upgrade -y'
      preStop:#容器关闭之前运行的任务
        exec:
          command: ['service httpd stop']
    volumeMounts:  #挂载持久存储卷
    - name: volume #挂载设备的名字,与volumes[*].name 需要对应
      mountPath: /data #挂载到容器的某个路径下
      readOnly: True
  volumes: #定义一组挂载设备
  - name: volume #定义一个挂载设备的名字
    #meptyDir: {}
    hostPath:
      path: /opt #挂载设备类型为hostPath,路径为宿主机下的/opt,这里设备类型支持很多种
    #nfs

 

标签:容器,name,yaml,command,注解,挂载,资源
From: https://www.cnblogs.com/root0/p/16706603.html

相关文章

  • mybatis注解之@Mapper和@MapperScan的使用
    +目录mybatis注解之@Mapper和@MapperScan方式一:使用@Mapper注解方式二:使用@MapperScan注解@MapperScan和@Mapper区别及理解作用扫描一个包扫描多个包myb......
  • 利用注解+反射优雅的实现通用Excel导入导出
    2019/3/12更新日常在做后台系统的时候会很频繁的遇到Excel导入导出的问题,正好这次在做一个后台系统,就想着写一个公用工具来进行Excel的导入导出。一般我们在导出的时候......
  • 【博学谷学习记录】超强总结,用心分享 。SpringBoot 常用注解
    @RequestMapping@RequestMapping注解的主要用途是将Web请求与请求处理类中的方法进行映射。SpringMVC和SpringWebFlux都通过RquestMappingHandlerMapping和RequestMappi......
  • Spring常用注解 以及 SpringBoot常用注解
    Spring常用注解以及SpringBoot常用注解既然提到了这个概念,那就从Spring先说起.SpringBoot就是封装后的Spring,相对于Spring,Boot省去了很多配置,也是很好的解决......
  • YAML
    可以在一个YAML文件中包含多个YAML文档,每个文档之间的分隔都用三个破折号(---)标记空格缩进,大小写敏感数据结构:1.对象: 键值对的集合,又称为映射(mapping)/哈希(hashe......
  • buf buf.work.yaml 一个好用的功能
    实际上此功能是在学习中发现的,按照一般的玩法,buf的包是需要一个buf.yaml文件的,但是假如没有,同时想进行管理(比如使用bufgenerate)我们可以通过一个buf.work.yaml配置,就......
  • 自定义注解实现加解密及脱敏
    title:ep_自定义注解实现加解密及脱敏date:2020-04-2809:44定义自定义注解@Documented@Target({ElementType.FIELD})@Retention(RetentionPolicy.RUNTIME)@Order......
  • Java【Spring】——@Component系列注解
    最近学习到 @Component,以及系列注解: @Controller  @Service  @Repository,这些注解的作用时是实例化接口到Spring容器中。事实上, @Controller  @Service  ......
  • springcloud-@RefreshScope注解
    一.问题注入过后不调用方法获取不到对应的value值二.演示@Component@RefreshScopepublicclassVal{@Value("${schedule.detectAlarmCron}")publicS......
  • YAML
    概念简介YAML是一个类似XML、JSON的标记性语言;它强调以数据为中心,并不是以标识语言为重点基本语法(1)大小写敏感(2)使用缩进表示层级关系(3)缩进不允许使用tab,......