[57] 읽기 전용 볼륨 살펴보기

    728x90
    반응형

    읽기 전용 볼륨 살펴보기

    Docker 볼륨의 읽기/쓰기 권한 관리

     

     

    읽기 전용(Read-Only) 바인드 마운트

    기본 설정

    docker run -v /host/path:/app:ro
    • :ro 플래그: 읽기 전용(read-only) 설정
    • 컨테이너가 바인드 마운트된 폴더 수정 불가
    • 호스트 시스템에서만 수정 가능

     

     

    볼륨 우선순위와 권한 관리

    전체 프로젝트 폴더 (읽기 전용)

    -v "/local/path:/app:ro"

    특정 폴더 쓰기 허용

    -v feedback:/app/feedback    # 명명된 볼륨
    -v /app/temp                # 익명 볼륨
    -v /app/node_modules        # 익명 볼륨

     

    더 구체적인 하위 볼륨을 특정한다면 그 하위 볼륨이 메인 볼륨보다 더 우선한다고 할 수 있다.

    **[bind mount의 /app 경로보다, 익명 볼륨의 /app/temp, /app/node_modules 경로가 더 특정되어있어 우선된다.]
    마인드 바운트에 바인딩한 /app 폴더보다 익명볼륨과 명명볼륨에 바인딩한 /app/feedback, /app/node_modules가 그렇다.

     

     

    완전한 실행 예시

    docker run -d --rm \    // detached 모드, 컨테이너 종료시 자동 삭제
      -p 3000:80 \          // 포트 설정
      --name feedback-app \ // 컨테이너 이름 설정
      -v feedback:/app/feedback \ // 명명 볼륨 설정 
      -v "/local/path:/app:ro" \  // 바인드 마운트 설정
      -v /app/node_modules \      // 익명 볼륨 설정
      -v /app/temp \              // 익명 볼륨 설정
      feedback-node:volumes       // 이미지 이름

     

     

    주요 특징

    권한 계층

    • 더 구체적인 경로가 상위 경로의 권한 재정의
    • 하위 볼륨이 상위 볼륨의 읽기 전용 설정 무시 가능

    용도별 설정

    • 소스 코드 : 읽기 전용 -- 바인드 마운트
    • 데이터 저장 폴더  : 읽기/쓰기 가능 -- 명명 볼륨, 익명 볼륨
    • 임시 폴더 : 익명 볼륨으로 관리 -- 익명 볼륨

    효율성

    • 필요한 폴더만 쓰기 권한 부여
    • 불필요한 파일 수정 방지
    • 컨테이너 보안 강화

    이러한 설정으로 개발 환경에서 안전하고 효율적인 파일 시스템 관리가 가능합니다.

     
     

     

     

     

    참고

    https://www.udemy.com/course/docker-kubernetes-2022

    728x90
    반응형

    댓글