Docker

[Docker] -i, -t, -d 란?

언킴 2022. 3. 4. 17:48
반응형

-i, -t 옵션은 컨테이너와 상호(interactive) 입출력을 가능하게 해준다. t는 tty를 할당하고, i는 표준 입출력을 사용한다. -d 옵션은 -i, -t와는 달리 백그라운드로 작동한다. -it 옵션을 적용하면 컨테이너가 생성과 동시에 실행되며 /bin/bash 로 접근하게 된다. 하지만 -d를 사용하게 되면 정지된 컨테이너만 생성된다. 입출력이 없는 상태로 컨테이너를 실행하는 것이다. 

 

$ docker run -it --name test_it ubuntu:18.04

$ docker ps 
CONTAINER ID   IMAGE          COMMAND   CREATED         STATUS         PORTS     NAMES
254fe0d44a41   ubuntu:18.04   "bash"    5 seconds ago   Up 5 seconds             test_it



$ docker run -d --name test_d ubuntu:18.04
CONTAINER ID   IMAGE          COMMAND   CREATED          STATUS                     PORTS     NAMES
34e95e88ccff   ubuntu:18.04   "bash"    4 seconds ago    Exited (0) 4 seconds ago             test_d
254fe0d44a41   ubuntu:18.04   "bash"    34 seconds ago   Up 34 seconds                        test_it

d의 경우 STATUS=Exited로 생성하자마자 종료가 되어 있는 것을 확인할 수 있다. 

 

-i : 입출력을 가능케 함.

-t : tty 를 할당

-d : detach로 접근함.