Stack/Docker

도커(Docker) 볼륨(Volume)

annovation 2025. 4. 1. 08:52

볼륨(Volume) 활용

Docker를 활용하면 특정 프로그램을 Container로 띄울 수 있다. 이 프로그램에 기능이 추가되면 새로운 Image를 만들어서 Container에 실행시켜야 한다. 이 때, Docker는 기존 Container에서 변경된 부분을 수정하지 않고, 새로운 Container를 만들어서 통째로 갈아끼우는 방식으로 교체한다. 기존에 만들어진 Image에 들어가서 변경된 부분을 억지로 수정하는 것보다, 이 방식이 효율적이라고 생각했던 것이다.

 

이러한 특징 때문에 기존 Container를 새로운 Container로 교체하면, 기존 Container 내부에 있던 데이터도 같이 삭제된다. 예를 들어, 만약 이 Container가 MySQL을 실행시키는 Container였다면, MySQL DB에 저장된 데이터도 같이 삭제되어버린다.

 

따라서 Container 내부에 저장된 데이터가 삭제되면 안되는 경우에는 볼륨(Volume)이라는 개념을 활용해야 한다 !


Docker Volume(도커 볼륨)이란?

Docker의 볼륨(Volume)이란 Docker Container에서 데이터를 영속적으로 저장하기 위한 방법이다. 즉, Container를 삭제할 때 데이터를 보존하기 위한 방법이다. Volume은 Container 자체의 저장 공간을 사용하지 않고, Host 자체의 저장 공간을 공유해서 사용하는 형태이다.

이미지 1 : https://youtu.be/CCVJtbgsg0Q?si=-MF3VwthQNjzCfHj


볼륨(Volume)을 사용하는 명령어

$ docker run -v [Host 디렉토리 절대경로]:[Container 디렉토리 절대경로] [Image명]:[태그명]
  • [Host 디렉토리 절대경로]에 디렉토리가 이미 존재할 경우, Host의 디렉토리가 Container의 디렉토리를 덮어씌운다.

이미지 2 : https://youtu.be/CCVJtbgsg0Q?si=-MF3VwthQNjzCfHj

  • [Host 디렉토리 절대경로]에 디렉토리가 존재하지 않을 경우, Host의 디렉토리 절대 경로에 디렉토리를 새로 만들고 Container의 디렉토리에 있는 파일들을 Host의 디렉토리로 복사해온다.

이미지 3 : https://youtu.be/CCVJtbgsg0Q?si=-MF3VwthQNjzCfHj


참고하면 좋은 사이트

1. https://mycodings.fly.dev/blog/2024-04-06-docker-volume-usage-and-principles#볼륨volume은-어디에-저장되나요

 

Docker 강좌 4편. Docker 볼륨 (Volume) 사용 방법과 원리

Docker 볼륨 (Volume) 사용 방법과 원리

mycodings.fly.dev


출처

1. 내용

https://youtu.be/CCVJtbgsg0Q?si=7VMtLgrWcoMoD0FS

2. 이미지 1 (영상 2:22)

https://youtu.be/CCVJtbgsg0Q?si=-MF3VwthQNjzCfHj

3. 이미지 2 (영상 3:35)

https://youtu.be/CCVJtbgsg0Q?si=-MF3VwthQNjzCfHj

4. 이미지 3 (영상 3:50)

https://youtu.be/CCVJtbgsg0Q?si=-MF3VwthQNjzCfHj

반응형