【k8s】YAML语言基础

文章目录

YAML介绍

YAML是一个类似于XML、JSON的标记语言。强调以数据为中心,并不是以标记语言为中心

yaml 复制代码
<heima>
    <age>15</age>
    <address>Beijing</address>
</heima>
yaml 复制代码
heima:
  age: 15
  address: Beijing

语法

  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进不允许使用tab,只允许空格( 低版本限制 )
  • 缩进的空格数不重要,只要相同层级的元素左对齐即可
  • '#'表示注释,从这个字符一直到行尾,都会被解析器忽略
  • 在k8s中,只需要知道lists、maps即可

支持的数据类型

  • 纯量:单个的、不可再分的值

    复制代码
    # 纯量, 就是指的一个简单的值,字符串、布尔值、整数、浮点数、Null、时间、日期
    # 1 布尔类型
    c1: true (或者True)
    # 2 整型
    c2: 234
    # 3 浮点型
    c3: 3.14
    # 4 null类型 
    c4: ~  # 使用~表示null
    # 5 日期类型
    c5: 2018-02-17    # 日期必须使用ISO 8601格式,即yyyy-MM-dd
    # 6 时间类型
    c6: 2018-02-17T15:02:31+08:00  # 时间使用ISO 8601格式,时间和日期之间使用T连接,最后使用+代表时区
    # 7 字符串类型
    c7: heima     # 简单写法,直接写值 , 如果字符串中间有特殊字符,必须使用双引号或者单引号包裹 
    c8: line1
        line2     # 字符串过多的情况可以拆成多行,每一行会被转化成一个空格
  • maps对象:键值对的集合,又称为映射(mapping)/ 哈希(hash) / 字典(dictionary)

    复制代码
    # 对象
    # 形式一(推荐):
    heima:
      age: 15
      address: Beijing
    # 形式二(了解):
    heima: {age: 15,address: Beijing}
  • 数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)

    复制代码
    # 数组
    # 形式一(推荐):
    address:
      - 顺义
      - 昌平  
    # 形式二(了解):
    address: [顺义,昌平]
    
    spec:
      containers:
        - name: front-end
          image: nginx
          ports:
            - containerPort: 80
        - name: flaskapp-demo
          image: jcdemo/flaskapp
          ports: 8080
    ------------------------------------------------
    "spec": {
        "containers": [{
            "name": "front-end",
            "image": "nginx",
            "ports": [{
                "containerPort": "80"
            }]
        }, {
            "name": "flaskapp-demo",
            "image": "jcdemo/flaskapp",
            "ports": [{
                "containerPort": "5000"
            }]
        }]
      }

注意事项

  • 书写yaml切记: 后面要加一个空格
  • 如果需要将多段yaml配置放在一个文件中,中间要使用---分隔

json与yaml互转

https://www.json2yaml.com/convert-yaml-to-json

相关推荐
阿寻寻3 小时前
【云原生技术】API 网关主动探测的通常是“域入口”(srpcgw),不是直接探测后端 Pod,也不是通过 srpcsrv/Consul 来判域健康
网络·云原生·consul
寂寞旅行4 小时前
向量数据库Milvus的使用
数据库·milvus
闻哥4 小时前
Redis事务详解
java·数据库·spring boot·redis·缓存·面试
Clarence Liu4 小时前
用大白话讲解人工智能(4) Softmax回归:AI如何给选项“打分排序“
人工智能·数据挖掘·回归
教男朋友学大模型4 小时前
Agent效果该怎么评估?
大数据·人工智能·经验分享·面试·求职招聘
道亦无名4 小时前
aiPbMgrSendAck
java·网络·数据库
hit56实验室4 小时前
AI4Science开源汇总
人工智能
CeshirenTester5 小时前
9B 上端侧:多模态实时对话,难点其实在“流”
开发语言·人工智能·python·prompt·测试用例
礼拜天没时间.5 小时前
Docker自动化构建实战:从手工到多阶段构建的完美进化
运维·docker·容器·centos·自动化·sre
relis5 小时前
Tiny-GPU 仿真与静态分析完整指南:Pyslang + Cocotb 实战
人工智能