温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

服务器YAML有哪些常用语法

发布时间:2026-07-16 20:53:13 来源:亿速云 阅读:94 作者:小樊 栏目:系统运维

服务器相关的 YAML 常用语法,其实就是 YAML 本身的通用语法,但在服务器配置里(如 Kubernetes、Docker Compose、Ansible、CI/CD 等)有一些高频出现的结构和写法。下面按「基础语法 → 服务器常见用法 → 示例」来说明。


一、YAML 基础语法规则

1️⃣ 基本规则

  • 大小写敏感
  • 缩进表示层级关系
  • 只能使用空格缩进,不能用 Tab
  • 缩进空格数不固定,但同一层级必须一致(常用 2 或 4 个空格)

2️⃣ 常见数据类型

✅ 字符串(String)

name: nginx

name: "nginx"

多行字符串:

description: >
  这是一段描述,
  会自动合并成一行。
script: |
  echo "start"
  echo "done"

✅ 数字(Number)

port: 8080
replicas: 3

✅ 布尔值(Boolean)

enabled: true
debug: false

✅ 列表(List / Array)

ports:
  - 80
  - 443
containers:
  - name: app
    image: nginx

✅ 对象 / 字典(Map)

server:
  host: 127.0.0.1
  port: 8000

二、服务器配置中常用结构

1️⃣ 层级对象 + 列表(最常见)

apiVersion: v1
kind: Pod
metadata:
  name: nginx-pod
spec:
  containers:
    - name: nginx
      image: nginx:1.25
      ports:
        - containerPort: 80

✅ 用于:Kubernetes、Docker Compose、CI/CD


2️⃣ 多环境配置(服务器非常常见)

server:
  dev:
    host: localhost
    port: 8080
  prod:
    host: 192.168.1.10
    port: 80

3️⃣ 引用变量 / 占位符(概念)

image: ${IMAGE_NAME}
version: ${VERSION}

不同工具支持方式不同(Ansible / Helm / GitHub Actions)


4️⃣ 空值与默认值

timeout:

timeout: ~

5️⃣ 注释

# 这是注释
port: 80  # 端口号

三、服务器场景下常见 YAML 示例

✅ Docker Compose

version: "3.9"
services:
  web:
    image: nginx
    ports:
      - "80:80"

✅ Kubernetes Deployment

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deploy
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
        - name: nginx
          image: nginx:latest

✅ Ansible Playbook

- hosts: webservers
  tasks:
    - name: install nginx
      apt:
        name: nginx
        state: present

四、容易出错的 YAML 语法点 ⚠️

❌ 错误(Tab)

  key: value   # 不能用 Tab

❌ 错误(冒号后没空格)

key:value

✅ 正确:

key: value

五、速查表(快速记忆)

类型 写法
字符串 name: nginx
多行 >
列表 - item
对象 key: value
层级 缩进
注释 #

如果你愿意,我也可以:

  • ✅ 针对 Kubernetes / Docker / Ansible 单独讲 YAML
  • ✅ 帮你 检查一个 YAML 文件是否有语法问题
  • ✅ 给你 服务器配置模板

你主要用在哪个场景?

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI