본문 바로가기

개인공부/Docker

Docker: 호스트 볼륨

반응형

호스트 볼륨 : 도커 컨테이너를 생성하고 휘발성이 아닌 비휠발성으로 DB를 다루는 법

 

.. 도커컨테이너를 생성하고 지우면 설정한 DB는 사라진다. 따라서 host 디렉토리와 연결해서 사용해야한다.

 

docker run -d \
--name wordpressdb_hostvolume \
-e MYSQL_ROOT_PASSWORD=password \
-e MYSQL_DATABASE=wordpress \
-v /home/wordpress_db:/var/lib/mysql \
mysql:5.7
docker run -d \
-e WORDPRESS_DB_PASSWORD=password \
--name wordpress_hostvolume \
--link wordpressdb_hostvolume:mysql \
-p 80 \
wordpress

 

디렉터리 단위의 공유뿐 아니라 단위 파일 단위의 공유도 가능

docker run -i -t \
--name file_volume \
-v /home/hello:/hello \
-v /home/hello2:/hello2 \
ubuntu: 14.04

 

볼륨 컨테이너

 

-v 옵션으로 생성한 컨테이너를 다른 컨테이너에서 공유하는 방법

volumes-from 옵션

docker run -i -t \
--name volumes_from_container \
--volumes-from volume_overide \
ubuntu:14.04

 

도커 볼륨

docker volume create --name myvolume
docker volume ls

 

공유할때는 [볼륨의 이름]:[컨테이너의 공유 디렉토리]

 

docker run -i -t --name myvolume_1 \
-v myvolume:/root/ \
ubuntu:14.04

 

docker inspect 명령어를 사용해서 도커 볼륨이 어떻게 되어있는지 확인 가능

docker inspect --type volume myvolume

 

도커 볼륨 삭제

docker volume prune

 

이처럼 컨테이너가 아닌 외부에 데이터를 저장하고 컨테이너는 그 데이터로 동작하도록 설계하는 것을 스테이트리스하다고 말합니다.

 

ps : -v 대신 --mount 옵션으로 설정해도됨

반응형

'개인공부 > Docker' 카테고리의 다른 글

Docker: 기본 명령어 정리  (0) 2021.12.06