728x90
개요
Docker를 사용하다 보면 수많은 컨테이너들이 생성되고 관리되는 것을 경험하게 됩니다.
특히 개발 과정에서 테스트나 일회성 작업을 위해 생성한 컨테이너들이 시스템에 계속 쌓이게 되면서, 이미지는 로컬의 하드디스크에 저장되기 때문에 디스크 공간도 낭비되고 컨테이너 관리도 복잡해지는 문제가 발생합니다.
이러한 상황에서 Docker의 --rm 옵션을 활용하면 컨테이너를 효율적으로 관리할 수 있습니다.
docker --rm 옵션이란❓
--rm 옵션은 컨테이너가 종료될 때 자동으로 컨테이너를 삭제하는 옵션입니다.
- 컨테이너 실행 중에는 정상적으로 동작
- 컨테이너가 종료되면(exit) 자동으로 컨테이너가 삭제됨
- docker ps -a 명령어로도 해당 컨테이너가
목록에 남지 않음
처음에는 컨테이너를 생성했는데 종료되었다고 컨테이너를 삭제하는게 맞나라는 생각이 들었지만, 코드가 변경된 경우, 해당 변경사항을 컨테이너에 반영 하기 위해서는 새로운 이미지를 빌드하고 기존 컨테이너를 교체해야 합니다. 이는 Docker의 이미지가 불변(Immutable)하다는 특성 때문입니다.
이러한 과정에서 --rm 옵션을 사용하면, 기존 컨테이너가 중지될 때 자동으로 삭제되므로 컨테이너 관리가 더욱 편리해집니다.
docker --rm 옵션 확인해보기
1. 이미지 확인
2. - -rm 옵션으로 컨테이너 실행
- 이미지를 기반으로 테스트용 컨테이너 생성
- run 옵션은 기본값이 Attach mode이기 때문에 -d 옵션으로 Detach mode로 실행
- --rm 옵션으로 컨테이너가 종료(stop)될 때 자동으로 삭제가 되도록 지정
3. 컨테이너 정지 후 컨테이너 목록 확인
- stop 옵션으로 컨테이너를 중지
- ps -a 옵션으로 모든 컨테이너 목록 조회 -> 조회 되지 않음
'TIL,일일 회고' 카테고리의 다른 글
[TIL, 일일 회고] 2024.12.30 - TCP 통신에서 3-way handshake는 필수인가❓ (0) | 2024.12.30 |
---|---|
[TIL, 일일 회고] 2024.12.29 - 브라우저 주소창의 숨겨진 GET 요청 (0) | 2024.12.29 |
[TIL, 일일 회고] 2024.12.27 - Docker : stdin 연결을 위한 인터랙티브 모드(-it) (1) | 2024.12.27 |
[TIL, 일일 회고] 2024.12.26 - 실시간 컨테이너 모니터링: attach와 logs -f 차이점 (0) | 2024.12.26 |
[TIL, 일일 회고] 2024.12.25 - 인스턴스 메서드와 정적 메서드: 차이점과 활용 방법 (1) | 2024.12.25 |