반응형

도커 컴포즈를 알아보기 위해서는 기본적인 도커의 사용 이유와 예제 및 구동 방법을 알고 있으셔야 됩니다.

기본 내용은 앞의 게시물을 확인해주세요 :) - https://junlab.tistory.com/216

 

[docker] 도커 사용 이유, 심플 예제 및 구동 (기본 사용법)

프로젝트 빌드를 위해서 도커를 굉장히 많이 사용합니다. 대략적인 명령어를 활용하여 구동만 시킬 줄 알지 도커 관련하여 기본기가 너무 부족한 걸 느꼈습니다. 이제는 도커에 대해서 조금은 �

junlab.tistory.com

 

일반적인 시스템은 단일 애플리케이션으로 구동이 되지 않습니다. 여러 개의 애플리케이션이 서로 의존성 있게 구성되어 시스템이 이뤄져 있습니다. 그렇다면 흔히 하나의 컨테이너가 하나의 애플리케이션을 담당한다고 하면 여러 개의 컨테이너가 필요로 합니다. 이때 필요한 기술이 도커 컴포즈(Docker Compose)입니다. 도커 컴포즈는 yaml 포맷으로 작성되며 여러 개의 컨테이너의 실행을 한 번에 관리를 할 수 있게 해 줍니다.

 

앞의 게시물 예제 기반으로 root 위치에 도커 컴포즈를 위한 파일을 하나 만들겠습니다.

 

1. docker-compose.yml

version: "3"
services:
  echo:
    image: example/echo:latest
    ports:
      - 9000:8080

version

docker-compose.yml 내용을 해석하기 위한 문법 버전 - 3 버전은 안전 버전입니다.

 

echo

services 아래의 echo는 컨테이너 이름입니다. 즉, echo는 하나의 컨테이너입니다.

 

image

도커 이미지

 

ports

포트 포워딩

 

도커 컴포즈 실행을 위해 아래 명령어를 실행시켜주세요.

docker-compose up

docker container run 명령어로 실행시킨 것과 같이 동일하게 실행이 됩니다.

 

-d 옵션을 주고 백그라운드에서 실행을 시킬 수도 있고 다음으로 컨테이너를 종료시키겠습니다.

docker-compose up -d
docker-compose ls
docker-compose down

yml파일에 명시된 컨테이너들은 down 명령어를 통해서 한 번에 종료시킬 수 있습니다.

 

도커 컴포즈에 대해서 간략하게 알아봤습니다.

다음은 젠킨스를 예제를 통해서 여러 컨테이너를 만들어보고 학습을 하도록 하겠습니다.

감사합니다.

 

p.s)

학습은 도커/쿠버네티스를 활용한 컨테이너 개발 실전 입문을 보고 학습했습니다 :)

반응형

+ Recent posts