-
docker (container) create
+
컨테이너를 생성
하고 자동으로 시작하진 않음
docker create --name testos centos
--name: 컨테이너명
-
컨테이너명을 바꾸고 싶으면 docker rename [현재이름] [바꿀이름]
-
컨테이너명을 바꿔도 컨테이너 ID는 변경되지 않음
-
로컬 리포지토리에 이미지가 없으면 docker hub
에서 이미지를 pull
$ docker create -it --name testos2 centos
option | description |
---|---|
-i (--interactive) | 표준입력을 활성화. 컨테이너와 attach 되어있지 않더라도 표준입력 유지 |
-t(--tty) | 컨테이너에 pseudo-terminal을 할당 |
-
Process Status
-
실행Up
중인 컨테이너들의 목록을 확인
-
docker container ls
와 같음
-a
전체 컨테이너 목록 출력
--no-trunc
컨테이너 ID 전체 보여줌
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
dbad558b1db0 mariadb "docker-..." 42 hours ago Up 8 seconds mariadb_local
-
컨테이너에 할당하는 고유한 컨테이너 ID
-
전체 ID에서 12자리만 출력
-
컨테이너를 생성할 때 사용된 이미지
-
컨테이너가 시작될 때 실행될 명령어
-
docker run
이나 docker create
명령어의 맨 끝에 새로운 명령어를 입력해서 컨테이너를 생성할 때 대체 가능
-
컨테이너 생성 후 경과 시간
-
컨테이너의 상태
-
실행 중 Up 종료 Exited 일시중지 Pause
-
컨테이너가 개방한 포트와 호스트에 연결된 포트
-
컨테이너 이름
-
컨테이너를 시작(실행)
-
생성해둔 컨테이너를 시작함
-a
--attach
해당 컨테이너 내부로 접근
-ai
해당 컨테이너 내부로 접근하여 표준 입력 받을 수 있도록
$ docker start -ai testos
Ctrl + P
Ctrl + Q
컨테이너 실행 상태를 유지한 채로 빠져나옴.
-
실행 중인 컨테이너를 종료
$ docker stop testos
testos
-
종료된 것을 확인 STATUS
Exited
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
dbad558b1db0 mariadb "docker-…" 42 hours ago Exited (0) 3 seconds ago mariadb_local
-
컨테이너를 시작하고 COMMAND를 실행
-
로컬에 이미지가 있다면 해당 이미지로 실행하고, 없으면 도커허브에서 다운로드 후 실행
→
create + run
-d
컨테이너 안으로 접근하지 않고, 컨테이너의 COMMAND를 백그라운드로 실행할 수 있음
$ docker run -dit --name test centos