docker-compose란?
여러 개의 컨테이너를 하나의 서비스로 구성하기 위한 도구이며,
docker-compose를 통해 여러 컨테이너를 생성, 실행을 자동화 및 관리할 수 있는
기능을 제공합니다.
이 글은 docker-compose의 명령어를 단순 나열해, 가독성이 떨어지는 부분이 많습니다.
docker-compose 설치하기
도커 설치 공식홈페이지
위 링크를 통해 도커를 설치하였다면, docker-compose를 설치할 필요가 없습니다.
도커를 설치하였다면, docker-compose도 함께 설치되어 있습니다.
.dmg 파일을 다운로드 받아 설치하면, docker-compose도 함께 설치됩니다.
application에서 docker를 실행하면, docker-compose도 함께 실행됩니다.
{/* truncate */}
예전에는 sudo curl -L "https://github.com/d 어쩌고~
명령어를 통해 설치했지만,
현재는 위 링크에서 docker를 설치하면 docker-compose도 함께 설치되어 있어 편리하게 사용할 수 있습니다.
docker-compose 버전 확인
> docker-compose --version
docker-compose 간단한 사용법 및 명령어들
이제 간단하게 설치가 완료되었으니, docker-compose를 사용해보겠습니다
도커를 사용 할 프로젝트에서 docker-compose.yml
파일을 만들어서 사용할 수 있습니다.
version: '3.8'
services:
db:
image: postgres
ports:
- '5432:5432'
environment:
- POSTGRES_DB=test
- POSTGRES_USER=test
- POSTGRES_PASSWORD=test
- POSTGRES_INITDB_ARGS=--encoding=UTF-8
실행
> docker-compose up
위 명령어를 실행하면, docker-compose.yml
파일을 찾아서 컨테이너를 생성하고 실행합니다.
> docker-compose up -d
-d
옵션을 주면, 백그라운드에서 실행됩니다.
실행 확인
> docker-compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
monorepo-nodejs-typeorm-db-1 postgres "docker-entrypoint.s…" db 20 minutes ago Up 4 seconds 0.0.0.0:5432->5432/tcp
위 명령어를 실행하면, 현재 실행중인 컨테이너를 확인할 수 있습니다.
위와 같이 나오면 정상적으로 실행이 된 것입니다.
종료
docker-compose down
위 명령어를 실행하면, docker-compose.yml
파일을 찾아서 컨테이너를 종료합니다.
재시작
docker-compose restart
위 명령어를 실행하면, docker-compose.yml
파일을 찾아서 컨테이너를 재시작합니다.
로그 확인
docker-compose logs
위 명령어를 실행하면, docker-compose.yml
파일을 찾아서 컨테이너의 로그를 확인할 수 있습니다.
컨테이너에 접속
docker-compose exec db bash
위 명령어를 실행하면, docker-compose.yml
파일을 찾아서 컨테이너에 접속할 수 있습니다.
컨테이너 삭제
docker-compose rm
위 명령어를 실행하면, docker-compose.yml
파일을 찾아서 컨테이너를 삭제할 수 있습니다.