Docker Basic Commands
컨테이너 목록을 확인한다.
$ docker ps
-a
옵션을 추가로 실행한다.
$ docker ps -a
종료된 컨테이너(Exited (0)
)가 추가로 보인다. 컨테이너는 종료되어도 삭제되지 않고 남아있다. 종료된 건 다시 시작할 수 있고 컨테이너의 읽기/쓰기 레이어는 그대로 존재한다. 명시적으로 삭제를 하면 깔끔하게 컨테이너가 제거된다.
컨테이너를 중지하는 명령은 아래와 같다.
$ docker stop [OPTIONS] CONTAINER [CONTAINER...]
종료된 컨테이너를 완전히 제거하는 명령은 다음과 같다.
$ docker images [OPTIONS] [REPOSITORY[:TAG]]
아래 명령을 통해 중지된 컨테이너 ID를 가져와 한 번에 삭제한다.
$ docker rm -v $(docker ps -a -q -f status=exited)
도커 이미지 목록을 확인한다.
$ docker images
이미지를 다운로드한다.
$ docker pull [OPTIONS] NAME[:TAG|@DIGEST]
이미지를 삭제한다.
$ docker rmi [OPTIONS] IMAGE [IMAGE...]
컨테이너 로그를 확인한다.
$ docker logs [OPTIONS] CONTAINER
컨테이너 명령어를 실행하는 방법은 아래와 같다.
$ docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
exec
명령을 통해 실행 중인 MySQL 컨테이너에 접속한다.
$ docker exec -it mysql /bin/bash
# mysql -uroot
mysql> show databases;
mysql> quit
쉘로 완전한 권한을 얻는 방법 말고 바로 MySQL 명령어를 실행 할 수도 있다.
$ docker exec -it mysql mysql -uroot
이제 호스트 OS에 MySQL을 설치하지 않아도 MySQL 클라이언트를 사용할 수 있다. 굳이 복잡한 작업이 필요 없는 경우는 -it
옵션없이 단순하게 명령을 실행하고 종료할 수도 있다.
Last updated
Was this helpful?