【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

相关推荐
闲云野鹤在人间几秒前
头秃修炼手册:StorageClass+StatefulSet+ETCD 全套渡劫笔记
linux·数据库·笔记·云原生·kubernetes·etcd
发量惊人的中年网工3 分钟前
做 AI 应用怎么选大模型 API?选项应该看哪几点?
人工智能·ai·大模型
zhikouai7 分钟前
只读权限与连接器写入:一款AI助手应用的数据通路设计
人工智能
lucas_AI9 分钟前
别让大模型一个字一个字点手机了:GUI-JEPA 用「打分」替代「解码」,快 3 倍只花 6% 参数
人工智能·agent
FOORIR 客流统计12 分钟前
AI 3D客流统计技术拆解:从深度数据到越线计数
人工智能·3d
一拳不是超人13 分钟前
用了两周,我给 DeepSeek Harness 写了 5 个插件
人工智能·ai编程·deepseek
愤怒的代码15 分钟前
什么是Paged Attention?
人工智能·agent
Decay__22 分钟前
03_MySQL 存储引擎与存储管理 —— InnoDB 深入、表空间/ibd、binlog/redo/undo 与双写缓冲
运维·数据库·sql·mysql·架构
樱木花道長23 分钟前
AMD Ross 深度系列 7:六组对照实验看Ross如何赋能AI完成Vivado 硬核IP配置
人工智能·fpga开发