개발자 되어버리기
docker 공유볼륨 만들기 본문
도커에서는 이미지로 컨테이너를 생성하면 이미지는 읽기 전용이 되며 컨네이너의 변경사항만 별도로 저장해서 각 컨테이너의 정보를 보존 합니다. 그렇기에 컨테이너를 삭제하면 기존에 컨테이너에 있던 데이터들까지 같이 삭제가 됩니다.
이를 방지하기 위해 컨테이너의 데이터를 영속적 데이터로 활용할 수 있는 몇가지 방법이 있습니다.
그중 딱 하나만 글로 적어두고자 합니다.
가장 간단한 방법인듯 합니다.
docker volume create --name myvolume
┖ 위처럼 docker volume 명령어를 이용하여 볼륨을 생성합니다.
이후 우분투를 생성하고 접속할 때 -v 옵션을 주어서 볼륨 컨테이너를 연동시킵니다.
docker run -i -t --name myvolume_1 -v myvolume:/root/ ubuntu:20.04
접속된 상태에서 명령어를 하나 입력해줍니다.
echo hello, volume! >> /root/volume
ctrl + p, q 로 나와줍니다.
이후 새로운 우분투 컨테이너를 생성합니다.
docker run -i -t --name myvolume_2 -v myvolume:/root/ ubuntu:20.04
이후에 확인해보면 이전에 쳤던 에코 명령어가 있는것을 확인할 수 있습니다.
이 방식의 장점은 파일이 실제로 어디에 저장되는지 사용자가 알 필요가 없이 볼륨 이름만 알고 있으면 다른 컨네이너에서도 쉽게 접근할 수 있다는 것입니다.
만약 실제 저장된 위치를 알고싶다면 다음 명령어를 쓰시면 됩니다.
docker inspect --type volume myvolume
불필요한 도커 볼륨을 삭제하고 싶으시다면
docker volume prune
명령어 사용하시면 됩니다
'DevOps > Docker' 카테고리의 다른 글
도커 컨테이너 자원 할당 제한 (0) | 2020.11.20 |
---|---|
Docker 컨테이너 생성/삭제 및 포트 바인딩 + 각종 명령어 (0) | 2019.10.18 |