Docker Commands Option

y001·2025년 2월 16일
0
post-thumbnail

1. 컨테이너 실행 명령어

1.1 기본 실행

docker container run --name test1 centos /bin/cal

위 명령어는 centos 이미지를 사용하여 새로운 컨테이너를 실행하고, /bin/cal 명령을 수행한 후 종료한다.

1.2 대화형 쉘 실행 (-it 옵션)

docker container run -it --name test2 centos /bin/bash
  • -i (--interactive): 표준 입력을 유지하여 키보드 입력을 받을 수 있도록 한다.
  • -t (--tty): 터미널을 활성화하여 대화형 셸을 사용할 수 있도록 한다.

위 명령어를 실행하면 CentOS 컨테이너 내부의 bash 셸에 접속할 수 있다. 이 옵션이 없으면 컨테이너는 실행되었다가 바로 종료된다.

1.3 백그라운드 실행 (-d 옵션)

docker container run -d --name test3 centos
  • -d (--detach): 컨테이너를 백그라운드에서 실행한다.
  • docker container ls 명령어를 통해 실행 상태를 확인할 수 있다.

백그라운드에서 실행된 컨테이너는 docker container stop <컨테이너 이름> 명령어로 종료할 수 있다.


2. 컨테이너 실행 옵션

2.1 -it 옵션의 의미

docker container run -it --name test2 centos /bin/bash

컨테이너 내부에서 uname -a 명령어를 실행하면, 컨테이너의 리눅스 커널 정보가 출력된다.

[root@컨테이너ID /]# uname -a
Linux 컨테이너ID 5.14.0-452.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Sat May 18 20:39:48 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

컨테이너는 호스트와 별개의 환경이지만, 동일한 리눅스 커널을 공유한다.

2.2 --rm 옵션 (컨테이너 자동 삭제)

docker container run -it --rm --name test4 centos /bin/cal
  • --rm: 컨테이너 실행 후 종료되면 자동으로 삭제한다.
  • 컨테이너를 실행하고 테스트하는 경우 유용하게 사용할 수 있다.
  • docker ps -a 명령어로 확인해 보면, 실행이 끝난 후 test4 컨테이너가 남아있지 않다.

2.3 -d 옵션 (백그라운드 실행)

docker container run --rm -d centos /bin/ping localhost

위 명령어는 ping localhost 명령어를 실행하는 컨테이너를 백그라운드에서 실행하고, 컨테이너 ID를 반환한다.

docker container ls -a

실행 중인 컨테이너를 확인하고, 필요하면 중지할 수 있다.

docker container stop <컨테이너 ID>

2.4 -f 옵션 (강제 삭제)

docker container rm -f <컨테이너 ID>
  • 동작 중인 컨테이너도 강제로 삭제할 수 있다.
  • docker ps -a 명령어로 실행 중인 컨테이너의 ID를 확인한 후 삭제하면 된다.

3. 컨테이너 및 이미지 정리

3.1 컨테이너 삭제

docker container ls -aq
  • 모든 컨테이너 ID를 출력한다.
docker container rm <컨테이너 ID>
  • 특정 컨테이너를 삭제할 수 있다.
  • 컨테이너 ID의 앞자리만 입력해도 가능하다.

3.2 전체 컨테이너 강제 삭제

alias crm='docker container rm -f $(docker container ls -aq)'
  • crm 명령어를 사용하여 모든 컨테이너를 강제 삭제할 수 있도록 설정한다.

3.3 이미지 삭제

alias irm='docker image rm -f $(docker image ls -aq)'
  • irm 명령어를 사용하여 모든 Docker 이미지를 강제 삭제할 수 있도록 설정한다.

0개의 댓글