[파이썬] 도커 컨테이너와 호스트 간 데이터 볼륨 설정

도커 컨테이너와 호스트 간 데이터 볼륨을 설정하는 가장 일반적인 방법 중 하나는 -v 옵션을 사용하는 것입니다. 이 옵션을 사용하면 호스트의 특정 경로와 컨테이너 내부의 경로를 연결하여 데이터를 공유할 수 있습니다.

예를 들어, 파이썬으로 작성된 도커 컨테이너에서 호스트의 특정 폴더를 읽고 쓰는 간단한 예제를 살펴보겠습니다.

import os

# 호스트 경로와 컨테이너 내부 경로 연결
host_path = '/path/to/host/folder'
container_path = '/path/to/container/folder'
os.makedirs(host_path, exist_ok=True)  # 호스트 폴더 생성

# 파일 생성 및 쓰기
file_path = os.path.join(container_path, 'example.txt')
with open(file_path, 'w') as file:
    file.write('Hello, Docker!')

# 파일 읽기
with open(file_path, 'r') as file:
    content = file.read()
    print(content)

위 코드는 호스트의 /path/to/host/folder 경로와 컨테이너 내부의 /path/to/container/folder 경로를 연결합니다. 이로써 도커 컨테이너 내에서 해당 경로를 통해 데이터를 읽고 쓸 수 있습니다.

위 예제 코드를 실행하기 위해 도커 컨테이너를 실행하는 명령어에 -v 옵션을 추가하면 됩니다.

docker run -v /path/to/host/folder:/path/to/container/folder <이미지 이름>

위 명령어에서 /path/to/host/folder는 호스트의 특정 경로를, /path/to/container/folder는 컨테이너 내부의 경로를 나타냅니다.

이제 도커 컨테이너 내부에서 작성한 파일은 호스트의 해당 경로에 저장되며, 호스트에서 작성한 파일은 도커 컨테이너 내부에서도 접근할 수 있습니다.

도커 컨테이너와 호스트 간 데이터 볼륨 설정을 통해 애플리케이션에서 생성된 데이터를 영속적으로 저장하고, 호스트와의 데이터 공유를 손쉽게 구현할 수 있습니다. 도커의 -v 옵션을 이용해 볼륨을 설정하는 방법을 숙지하여 효율적인 데이터 관리를 할 수 있도록 해보세요.