반응형
Docker 컨테이너를 삭제할 때 컨테이너 안에서 생성된 데이터를 모두 지우고 싶다면, 아래 사항들을 확인하고 실행하면 됩니다.
1. 볼륨을 사용하지 않았다면 (기본 상태)
docker rm -f 컨테이너이름
- 이 경우, 컨테이너 안에서 생성된 데이터는 컨테이너 삭제와 함께 사라집니다.
2. 볼륨을 사용했다면 (예: -v, docker volume 사용 시)
컨테이너 삭제만으로는 외부 볼륨 데이터는 지워지지 않습니다.
함께 삭제하려면:
docker run --name mycontainer -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=12345678
-e POSTGRES_DB=postgres -p 5432:5432 -v pgdata:/var/lib/postgresql/data -d postgres
# -v pgdata:/var/lib/postgresql/data 를 사용하여 container를 삭제하여도 volume는 삭제되지 않습니다.
docker rm -v 컨테이너이름
- -v: 컨테이너에 연결된 익명 볼륨(anonymous volume) 도 함께 삭제합니다.
3. 명시적으로 생성한 named volume 이 있다면:
docker volume rm 볼륨이름
전체 사용 안 하는 볼륨 정리:
docker volume prune
- 사용 중이지 않은 모든 볼륨 삭제
4. 컨테이너 + 이미지 + 볼륨 한꺼번에 삭제하고 싶다면:
docker rm -f 컨테이너이름
docker volume rm $(docker volume ls -q)
docker rmi 이미지이름
또는 한 줄로 모든 걸 정리:
docker system prune -a --volumes
- -a: 안 쓰는 이미지도 삭제
- --volumes: 사용 안 하는 볼륨도 삭제
이 명령은 컨테이너, 이미지, 네트워크, 사용되지 않는 모든 볼륨을 한 번에 삭제하므로 주의하세요.
반응형
'가상 머신 > Docker' 카테고리의 다른 글
[ Docker ] 내 docker에 자동 실행 기능 추가하기 (0) | 2025.04.02 |
---|---|
[ Docker ] build 명령어로 나만의 이미지 만들기 (0) | 2025.04.02 |
[ Docker ] Docker root 폴더 변경하기 (0) | 2025.04.01 |
[ Docker ] 도커 시작시 Port 포워딩 설정하기 (1) | 2024.12.02 |
[ Docker ] save - Container 작업 후 이미지로 저장 후 이미지로 읽어 들이기 (0) | 2024.12.02 |