一、yaml是什么?
yaml 首次发表于2001 年,其官方文档给出的描述:
“yaml ain’t markup language” (abbreviated yaml) is a data serialization language designed to be human-friendly and work well with modern programming languages for common everyday tasks.
“yaml 不是标记语言 ”(缩写为 yaml)是一种 数据序列化语言 ,旨在 对人类友好 ,并且可以与现代编程语言很好地配合完成常见的 日常任务 。
不是标记语言 : 谁是标记语言,xml就是。xml被设计为与标准通用标记语言 (sgml) 向后兼容,sgml 旨在支持结构化文档。了解更多xml知识:xml是什么与为什么
数据序列化语言 : 使用yaml承载来数据,并在程序之间传递,这部分职责与xml、json相似。
对人类友好 : 使得非专业人士也能轻松阅读。
编程语言日常任务 : 程序本身的属性、依赖关系表达,程序运行过程产生的数据,程序之间数据的传递等这些任务,都要以一种形态表达出来,常见的有:配置文件、日志文件、进程间消息传递、跨语言数据共享等等。
二、yaml为什么产生?
yaml的产生是为了:提高人们对“数据交换格式”的可读性;数据可在编程语言之间交换。
而json的产生是为了:简单性和通用性。json的生成和解析很简单,但人类的可读性相对差些。
三、yaml长啥样?
先来直观地看看yaml文件(docker-compose),不求甚解。
version: 3.7services: app: image: node:12-alpine command: sh -c yarn install && yarn run dev ports: - 3000:3000 working_dir: /app volumes: - ./:/app environment: mysql_host: mysql mysql_user: root mysql_password: secret mysql_db: todos mysql: image: mysql:5.7 volumes: - todo-mysql-data:/var/lib/mysql environment: mysql_root_password: secret mysql_database: todosvolumes: todo-mysql-data:四、yaml文件怎么看?
了解yaml约定与语法(1)约定
大小写敏感;
层级关系使用缩进来表示(用空格,不用tab键;敲几个空格不限,但相同层级左侧要对齐);
注释使用 # , # 前带空格;
内容块:起始使用 --- ;结束使用 ... ;
重复内容的定义:锚点标签&表达被引用的内容,*表达引用。
(2)语法
总的来说,支持的基本数据结构: 对象 、列表以及纯量 。
对象: 也称字典,使用key:value来表达。
表达方式一:
key1: key11: value11 key12: value12表达方式二:
key1: { key11: value11, child-key12: value12 }列表 : 也称序列、数组。
表达方式一:
values: - value1 - value2 - value3表达方式二:
values: [value1, value2, value3]纯量 : null、布尔、字符串、整数、浮点数、日期和时间等基本数据类型。
领域yaml规范约定不同领域都有各自的yaml规范约定。
第三部分的yaml文件是docker-compose,其规范约定在compose specification中,详细内容参见链接3
戴森将在新加坡选址生产制造电动汽车
新唐推出全新基于Arm Cortex-M23的低功耗5V微控制器
全局制胜丨GSIE 2023何以“狂飙”?
新品速递 | 迈威通信MaxGate300系列工业Modbus网关
OPPO Reno6今日正式开售,销量再创历史新纪录
YAML是什么?
AMetal开发通用外设的流程与规范
美国首条太阳能公路正式投运
机械制图的公差与配合及其标注方法
声音发生器电路图分享
电子式电流互感器技术
“多技术融合”将成为定位技术未来发展的必然趋势
物联网技术实现防控疫情智慧化管理
DCMT系列自动电源转换系统概述及组成
GT Advanced Technologies和安森美半导体合作关于碳化硅
索尼的诚意:预购Xperia XZ2送PS4
英特尔让路10纳米 关闭晶圆代工服务
积塔半导体特色工艺生产线项目首批设备已搬入 并将于一季度正式投产
商务部正式发布2020年第4号文件《不可靠实体清单规定》
人类丰满的AI梦,正在撞上冰冷的现实