Docker CLI 명령어에 대해서 오늘도 복습하면서 더 정리해보았다.
1. Docker CLI 명령어
컨테이너 로그 조회하기
컨테이너에서 발생한 로그를 조회하려면 logs 명령어를 이용하면 된다.
# 특정 컨테이너의 모든 로그 조회
# docker logs (컨테이너 ID or 컨테이너명)
$ docker run -d redis
$ docker logs (redis가 실행되고 있는 컨테이너 ID)
위의 명령어를 사용하면 redis를 실행하고 그 로그를 조회해볼 수 있다.
위와 같이 조회하면 모든 로그가 조회된다. 최근 로그만 확인하고 싶다면 --tail 같은 옵션을 사용할 수 있다. 로그의 끝부터 입력한 숫자만큼의 줄 수의 로그가 출력된다.
# dokcer logs --tail (표시하고 싶은 줄 수) (컨테이너 ID or 컨테이너명)
$ dokcer logs --tail 15 moomoo-nginx
또한 -f 옵션을 이용하면 실시간으로 생성되는 로그를 볼 수 있다. 기존 로그도 조회되면서 그 이후 실시간으로 생성되는 로그를 볼 수 있다. 기존 로그를 보고 싶지 않다면 --tail 옵션과 함께 사용하면 된다.
# 기존 로그 + 실시간으로 생성되는 로그 조회
# docker logs -f (컨테이너 ID or 컨테이너명)
$ docker logs -f moomoo-nginx
# 실시간으로 생성되는 로그만 조회
# docker logs --tail 0 -f (컨테이너 ID or 컨테이너명)
$ docker logs --tail 0 -f moomoo-nginx
실행중인 컨테이너 내부에 접속하기
컨테이너는 하나의 격리된 컴퓨터 공간처럼 동작한다. 컨테이너에 직접 접속해서 상태를 확인하는 경우도 있고, 디버깅을 해야하는 경우도 많아 실행중인 컨테이너에 직접 접속하는 법 역시 당연히 알고있어야 한다.
실행중인 컨테이너에 명령하려면 exec 명령어를 이용해야한다. -i와 -t 옵션을 함께 사용하여 셸로 접속할 수 있다.
# docker exec -i -t (컨테이너 ID or 컨테이너명) bash
# -i -t는 -it로 줄여쓸 수 있다
$ docker exec -it moomoo-ngnix bash
이렇게 컨테이너 내부에 접속한 뒤에는 ls, cd등 리눅스 명령어를 이용하여 원하는 작업을 할 수 있다.
alpine 이미지 같은 경량화된 이미지의 경우는 bash가 설치되지 않아서 bash 셸로 접속이 안되는 경우가 있다. 그런 경우에는 sh로 접속할 수 있다.
# docker exec -it (컨테이너 ID or 컨테이너명) sh
$ docker exec -it moomoo-nginx sh
2. Redis 컨테이너 띄워보기 실습
먼저 run 명령어만을 이용해서 이미지를 pull 받고, 컨테이너를 생성하고 실행하는 것 까지 한 번에 할 수 있다. 백그라운드에서 실행하고, 포트 매핑도 해주고, 컨테이너 이름도 설정해주었다.
$ docker run -d -p 6379:6379 --name moomoo-redis redis
이제 docker ps 명령어를 이용해 컨테이너가 잘 실행되고 있는지 확인할 수 있다.
$ docker ps
이미지 목록도 확인해보면 redis가 있음을 확인할 수 있다.
$ docker image ls
logs 명령어를 이용해 로그도 조회해 볼 수 있다.
$ docker logs moomoo-redis
컨테이너에 직접 접속해 redis를 사용해 볼 수 있다.
$ docker exec -it moomoo-redis bash
접속한 다음 아래 명령어들을 차례로 입력해보았다.
$ redis-cli
ping
set moomoo melong
get moomoo
아래와 같이 잘 작동하는 것을 볼 수 있다.
'Docker' 카테고리의 다른 글
Docker Compose 개념 및 정리 (0) | 2024.12.02 |
---|---|
DockerFile 작성법 (0) | 2024.11.29 |
Docker Volume 개념 및 활용 (0) | 2024.11.28 |
Docker 기본 개념 및 CLI 명령어 (2) (0) | 2024.11.26 |
Docker 기본 개념 및 CLI 명령어 (1) (0) | 2024.11.25 |