
이미지로부터 새로운 컨테이너를 만들고 실행하는 명령어
$ docker run <이미지>
실행, 전체 자동 수행 명령어

$ docker run... = docker pull + docker create + docker start 로 표현이 가능하다.
$ docker run <이미지>
위 명령어는 아래와 같이 3단계로 똑같이 실행할 수 있다.
$ docker pull hello-world
$ docker create hello-world
$ docker start -a CONT_ID
$ docker pull hello-world

$ docker create hello-world

$ docker start -a CONT_ID

$ docker run -it ubuntu bash
Ubuntu 이미지로 컨테이너를 만들고, bash 셀에 인터렉티브 모드로 접속하겠다는 의미
-it
bash
위 명령어도 아래와 같이 3단계로 나눌 수 있다.
$ docker pull ubuntu

$ docker create -it ubuntu

$ docker start -a CONT_ID

$ docker run -it ubuntu bash
먼저 위 명령어를 작성하고 Enter를 누른다. 그럼 아래와 같이 컨테이너 안에서 터미널이 실행된다.

"Ctrl + P + Q"를 누르면 현재 컨테이너를 나가게된다.(종료되는 것은 아님)

$ docker exec -it CONT_ID bash
$ docker attach CONT_ID
$ docker ps 명령어를 통해 현재 실행 중인 컨테이너를 확인해보면 컨테이너가 종료된 것이 아니기 때문에 확인이 가능하다. 확인했다면, 아래 위 명령어 + 해당 컨테이너 ID를 복사 붙여넣기(앞자리만 써도됨)해서 컨테이너에 재진입을 할 수 있다.

컨테이너 안에서는 exit로 빠져나오면 된다.

$ docker container ls
$ docker ps
$ docker container ls -a
$ docker ps -a
위 컨테이너 실행 후 아래 위 명령어를 작성하면 모든 컨테이너 상태를 확인할 수 있다. 위 두 명령어는 같은 동작을 하는 명령어이다. -a 키워드가 붙으면 종료된 컨테이너까지 모두 보여주고, -a가 없으면 현재 실행 중인 컨테이너만 나타낸다.

$ docker stop CONT_ID
$ docker start CONT_ID
$ docker restart CONT_ID
위 명령어는 컨테이너 중지, 시작, 재시작 명령어이다.

$ docker rm CONT_ID
$ docker rm -f CONT_ID
rm 명령어는 컨테이너 리스트를 삭제하는 명령어이다.

하지만 실행 중인 컨테이너는 rm으로 삭제되지 않는다.

실행 중인 컨테이너를 삭제하는 방법은 컨테이너를 중지시키고 난 뒤 삭제하거나 -f 키워드로 강제 삭제를 하는 방법이 있다.
