YAML 문법

Monday·2024년 6월 6일
post-thumbnail

YAML이 무엇인가

YAML은 (YAML Ain't Markup Language) 나 (Yet Another Markup Language) 의 약어이다.
사람이 읽을 수 있는 다목적 데이터 직렬화 언어로 주로 구성 파일을 작성하는데 사용된다.

Spring Boot에서도 application.yml을 본 적이 있을 것이다.
쿠버네티스에서도 YAML이 많이 사용되므로 쿠버네티스를 사용하기 전에 YAML 문법을 익혀두는것이 좋을 것이다.

기본 문법

들여쓰기

들여쓰기로 하위 객체인 것을 표시한다

들여쓰기는 2칸, 4칸을 지원한다.
보통 2칸이 표준이다.

데이터 정의

데이터는 key-value 형식이다

key: 뒤에 반드시 한칸을 띄워줘야 한다.

배열 정의

배열은 -로 표시한다

여러 요소들을 - 로 나열하는 것이다.

예시

food:
  fruit:
    - appple
    - banna
    - watermelon

주석

주석은 #로 처리

참/거짓

참/거짓은 대소문자 상관없이 True, False를 지원하며 yes, no도 지원한다

숫자

정수, 실수를 " 없이 사용하면 숫자로 인식한다

줄바꿈

여러 줄을 표현하는 방법이다

설정파일에 여러줄로 이루어진 텍스트 같은게 들어갈 수 있기에 줄바꿈이 필요하다.

"|" 지시어는 마지막 줄바꿈이 포함

예시

{
  "newlines_sample": "number one line\n\nsecond line\n\nlast line\n"
}

위과 같은 json 파일이 yaml 파일에서는 아래와 같이 표현된다.

newlines_sample: |
            number one line

            second line

            last line

"|-" 지시어는 마지막 줄바꿈을 제외

|- 를 사용하면 맨 마지막 줄바꿈은 제외된다.

위의 경우 last line 뒤에 오던 줄바꿈이 사라져서 다음과 같이 표현된다.

{
  "newlines_sample": "number one line\n\nsecond line\n\nlast line"
}
newlines_sample: |-
            number one line

            second line

            last line

">" 지시어는 중간에 들어간 빈줄을 제외

> 을 사용하면 아무 내용이 없는 줄은 줄바꿈 기호가 들어가지 않는다.

{
  "newlines_sample": "number one line\nsecond line\nlast line\n"
}
newlines_sample: >
            number one line

            second line

            last line

주의 사항

띄어쓰기

key:value 사이에는 반드시 빈칸이 필요하다
(없으면 String이라고 인식한다)

문자열 따옴표

대부분 문자열은 따옴표 없이 사용할 수 있지만 : 가 있는 경우는
반드시 따옴표가 필요하다.


참조 링크
쿠버네티스 따라하기
YAML이란 무엇인가요?

profile
차근차근 꾸준히

0개의 댓글