Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- Kafka
- sizeof()
- 정보처리기사
- half-close
- 구조체
- 2025 1회
- EOF
- 합격 후기
- 카운팅 정렬
- fwrite()
- strlen()
- kafka server
- 에라토스테네스의 체
- 2025
- 10989
- SQLD
- Docker
- 백준
- 1929
- endif
- 도커
- handling
- scanf()
- 카프카 서버
- fread()
- ifdef
- signal
- bootstrap.server
- fgets()
- container
Archives
- Today
- Total
팥빵 먹으면서 코딩하는 블로그
[Docker] 컨테이너 종료 방법 및 가능성 본문
의문) docker-compose up -d로 실행한 컨테이너는 어떻게 종료해야 할까
- 컨테이너는 그냥 놔둬도 되지만, 불필요한 리소스 사용을 피하려면 종료하는 것이 좋다.
- 현재 컨테이너 내에서 Kafka를 실행하고 있음을 감안
컨테이너를 꺼야 하는 이유
- 불필요한 리소스 소모
- Kafka와 같은 서비스는 계속 실행되며 CPU, RAM을 사용한다.
- Docker 컨테이너가 백그라운드에서 실행 중이라 모니터링 없이 방치될 수도 있다.
- 포트 충돌 가능성
- Kafka는 9092 포트를 사용한다.
- 다음 번 실습할 때 이미 해당 포트가 사용 중이라 실행 오류가 발생할 가능성이 있다.
- Docker 용량 관리
- 컨테이너가 계속 실행되면 로그 파일이 쌓이고 디스크 공간 차지.
실습 종료 후 컨테이너 정리하는 방법
1) 컨테이너 정지 (일시 중지)
docker-compose down
- 컨테이너가 종료된다.
- 그렇지만 데이터는 유지됨 (예: Kafka 토픽, 메시지)
2) 컨테이너 중지 후 완전히 삭제
docker-compose down --volumes
- 컨테이너뿐만 아니라 볼륨(데이터)까지 삭제된다.
- 다시 docker-compose up -d 하면 새로운 환경에서 시작할 수 있다.
3) 개별 컨테이너만 중지
docker ps // 실행 중인 컨테이너 확인 docker stop <CONTAINER_ID>
- 특정 컨테이너만 중지하고 싶다면 컨테이너 ID를 사용하여 종료 가능.
부록) Kafka 데이터까지 삭제해야 할까?
- 다시 실습할 예정이면 docker-compose down만 실행하고,
- 완전히 초기화하고 싶다면 docker-compose down --volumes 실행한다.
Q) 하지만 다음 실습을 위해 컨테이너 정리하고 싶어요
docker-compose down --volumes && docker system prune -a -f
- 컨테이너, 이미지, 네트워크 등 모든 Docker 리소스를 삭제한다.
- 다음 실습 시 처음부터 깨끗한 환경에서 실행이 가능하다.