Docker/Docker Compose 사용법 익히기

[Docker Compose 기본] 1. docker compose 작성을 위한 .yml 포맷 이해하기

Fletcher 2024. 8. 17. 22:54

 

반갑습니다!

이번 포스트부터는 docker compose에 대한 내용을 알아보겠는데요

Docker Compose는 여러 컨테이너를 모아서 관리하기 위한 툴입니다 ^^

 

앞으로 실습을 통해서 Docker Compose로 웹 서비스의 서버를 구축해볼건데요

웹 서비스는 프론트엔드 서버, 데이터베이스 서버,

백엔드 서버로 이루어져 있는 경우가 대다수입니다 ^^

 

더 나아가 서비스 규모가 커지면 복수의 컨테이너를 유지하고 관리해야 하며,

이를 위해서 쿠버네티스 등의 관리 툴이 사용됩니다 ^^

 

우선은 Docker와 Docker Compose를 잘 다룰 수 있다면 기본적인 서비스 구현이 가능하고,

Docker와 Docker Compose에 대한 기본적인 이해가 바탕이 되어야

쿠버네티스도 원활하게 익히고 활용을 할 수 있기 때문에

중요한 내용이라 말씀드릴 수 있겠습니다 ^^

 

 

 

docker compose를 이용할 때에도 이미지 빌드 때 dockerfile을 작성했던 것과 마찬가지로

docker-compose용 파일을 작성을 하는데, yaml 형식의 파일로 작성을 합니다

이 파일에서 특정 설정을 지정하고 이 파일을 바탕으로 docker compose 명령을 실행하면

여러 컨테이너가 한꺼번에 실행이 되고, 내부 네트워킹도 가능합니다

또한 이 여러 컨테이너들을 내리거나 새 이미지를 재빌드하거나 할 수도 있습니다 ^^

 

 

여기서 docker compose는 특정 포맷을 이용하는데요

IT쪽에서 데이터를 구조화하는 다양한 문법들이 있습니다

대표적인 포맷들에는 JSON, XML, CSV 등이 있는데요 YML도 포함됩니다 ^^

 

먼저 YAML 포맷의 기본 문법에 대해서 간략하게 정리를 해보겠습니다 !

 

 

 

 

 

JSON 포맷과 비슷하기 때문에 해당 파일 형식과 비교하며 예를 들어보겠습니다

JSON 포맷 예시.txt
0.00MB

 

예시를 위한 JSON 포맷 샘플 파일입니다 ^^

 

 

 

 

위 JSON 포맷 파일의 동일한 내용을 YAML 포맷으로 변환해보겠습니다

YAML 포맷 예시.txt
0.00MB

 

예시를 위한 YAML 포맷 샘플 파일입니다 ^^

 

 

 

 

 

참고로

JSON은 줄바꿈을 \n으로 표기합니다

 

YAML은 줄바꿈을 | 또는 >을 이용하는데요 ^^

|을 이용하면 마지막 줄바꿈까지 포함하고,

>을 이용하면 마지막 줄바꿈은 제외하고 중간의 줄바꿈만 적용됩니다!

 

아래 링크는 YAML 포맷을 JSON으로 변환해주는 사이트입니다 ^^

https://onlineyamltools.com/