본문 바로가기

dev/DOCKER

docker-compose 사용

docker compose는 여러 개의 컨테이너를 관리하는 orchestration입니다.

 

kubernetes와 비슷한 개념이라고 생각하시면 됩니다.

 

docker compose를 사용하기 위해서는 먼저 docker-compose를 설치해야 합니다.

 

설치하는 방법은 아래의 링크를 참고하시면 됩니다.

 

https://tiqndjd12.tistory.com/88

 

centos docker-compose 설치

centos에 docker-compose 설치하는 방법을 포스팅하겠습니다. curl 명령어로 docker-compose 설치해야 하는데 리눅스 일반 계정으로 설치하는 거라면 sudo 권한으로 설치해야 합니다. (sudo curl -L "https://git..

tiqndjd12.tistory.com

 

설치가 완료되었다고 해서 바로 docker-compose를 사용할 수 있지 않습니다.

 

docker-compose.yml 파일이 있는 경로에서 docker-compose를 실행해야 사용할 수 있습니다.

 

docker-compose.yml 파일 위치

 

현재 사용자 경로에 docker-compose.yml 파일을 작성합니다.

 

docker-compose.yml 파일 예시 내용

 

docker-compose.yml에 작성된 내용은 nginx와 tomcat 도커 이미지를 다운받아 컨테이너로 실행하는 내용입니다.

 

11~14라인은 healthcheck 속성을 이용해 nginx 컨테이너가 tomcat1 컨테이너가 실행 중인지 확인하는 내용입니다.

 

healthcheck 속성을 사용한 이유는 tomcat1이 정상적으로 실행되는지 확인한 후 nginx와 연계하기 위해서입니다.

 

원래 depends_on 속성을 사용해도 되지만 tomcat1이 정상적으로 실행 중인지 확인하지 않기 때문에 권장하지 않습니다.

 

단 위의 예처럼 실행하면 nginx 로드 밸런싱이 안된다는 점 참고하시기 바랍니다.

(tomcat1 컨테이너가 다운되면 tomcat2 컨테이너가 nginx와 연계 안됨)

 

아래 링크에서 depends_on 속성정보 확인하시기 바랍니다.

 

https://docs.docker.com/compose/compose-file/compose-file-v3/#depends_on

 

docker-compose.yml 파일 작성이 끝났으면 docker-compose를 실행합니다.

 

docker-compose 실행 화면

 

"sudo docker-compose up -d" 명령어는 docker-compose.yml 파일에 작성한 내용대로

 

도커 이미지 다운받고, 컨테이너로 실행합니다.

 

-d 옵션은 백그라운드 옵션입니다.

 

반대로 컨테이너를 중지하고 삭제하고 싶으면 "sudo docker-compose down" 명령어를 사용하면 됩니다.

 

"sudo docker-compose start"는 docker-compose로 생성된 컨테이너를 실행하는 명령어입니다.

 

"sudo docker-compose stop"는 docker-compose로 생성된 컨테이너를 중지하는 명령어입니다.

 

docker 컨테이너 조회 화면

 

위 화면에서 컨테이너가 제대로 올라간 것을 확인할 수 있고, healthcheck도 정상적으로 실행된 것을 확인할 수 있습니다.

 

docker-compose.yml 샘플 파일 필요하신 분들은 아래 링크에서 다운받으시면 됩니다.

 

docker-compose.yml
0.00MB

 

'dev > DOCKER' 카테고리의 다른 글

docker cp  (0) 2022.10.31
docker volume  (0) 2022.10.31
docker install jenkins  (0) 2022.02.09
docker image save load  (0) 2022.01.08
docker container install vi  (0) 2021.07.11