개발자 도구 · Docker 작성 변환기로의 Docker 실행
docker run과 Compose의 볼륨: 바인드 마운트, 명명된 볼륨 및 :ro
· 작동 방식
도커 작성 권
-v 플래그는 콜론의 남은 내용에 따라 세 가지 다른 의미를 가질 수 있습니다. 이 게시물에서는 바인드 마운트, 명명된 볼륨 및 익명 볼륨과 각각이 YAML이 되는 방법에 대해 설명합니다.
데이터베이스가 비어 있는 상태로 돌아왔습니다. 컨테이너가 다시 생성되었으며 -v 플래그가 디스크에서 남아 있는 위치를 참조하지 않았습니다.
데이터베이스가 비어 있는 상태로 돌아왔습니다. 컨테이너가 다시 생성되었으며 -v 플래그는 디스크에서 남아 있는 위치를 참조하지 않았습니다. 증거: 대상 전용 -v 값은 익명이며 지속성 경고를 받습니다. 일회용 리터럴로 볼륨 지속성을 재현합니다. 각 소스 발생을 서비스 볼륨 및 명명된 선언과 쌍으로 연결합니다. 대상 검토를 위해 소스 분류 및 경로를 예약합니다.
볼륨 사고는 또한 별도의 볼륨 사고 경계가 --mount가 올바르게 사용되었지만 지원되지 않는 것으로 보고된다는 사실을 보여줍니다. 증거: --mount가 올바르게 사용되었지만 지원되지 않는 것으로 보고되었습니다. 이 볼륨 지속성 제약 조건은 중지 지점입니다. 제조 동작 없이 서비스 볼륨과 명명된 선언을 검사한 다음 소스 분류 및 경로에 대한 호스트 검사를 문서화합니다.
-v의 세 가지 의미 — 절대 경로(바인드 마운트), 이름(명명된 볼륨) 또는 콜론 앞에 아무것도 없음(익명 볼륨)
-v의 세 가지 의미 — 절대 경로(바인드 마운트), 이름(명명된 볼륨) 또는 콜론 앞에 아무것도 없음(익명 볼륨). 증거: 간단한 이름, 호스트 경로, 상대 경로, 변수 및 Windows 드라이브는 다르게 분류됩니다. 볼륨 지속성 토큰을 서비스 볼륨 및 명명된 선언으로 추적합니다. 순서가 지정된 값을 마지막 값 필드와 구분하세요. 소스 분류 및 경로는 컬렉션 외부에 있습니다.
관련 볼륨 메커니즘 경계는 별도의 볼륨 문법 경계는 pgdata와 읽기 전용 init 바인딩이 모두 리터럴 볼륨 문자열로 유지된다는 것입니다. 증거: pgdata와 읽기 전용 init 바인딩은 모두 리터럴 볼륨 문자열로 유지됩니다. 이 볼륨 지속성 사실을 사용하여 서비스 볼륨 및 명명된 선언에서 하나의 멤버 또는 스칼라를 예측합니다. 소스 분류 및 경로에 대해 결정하기 전에 경고를 확인하세요.
명명된 볼륨에는 선언이 필요합니다. — 최상위 볼륨: Compose에 필요한 키 및 키가 누락되면 어떻게 되나요?
이름이 지정된 볼륨에는 선언이 필요합니다. 최상위 볼륨: Compose에 필요한 키와 누락 시 발생하는 상황입니다. 증거: 명명된 소스는 최상위 볼륨에서 null 선언을 얻습니다. 해당 모델에서 볼륨 지속성 직렬화를 판단합니다. 서비스 볼륨 및 명명된 선언의 인용은 유형을 보호하지만 소스 분류 및 경로에 대한 운영 증거를 제공하지 않습니다.
두 번째 볼륨 직렬화 관찰은 별도의 볼륨 출력 경계는 향후 Compose 디렉터리를 확인하지 않고 상대 문자열이 보존된다는 것입니다. 증거: 향후 Compose 디렉터리를 확인하지 않고도 상대 문자열이 보존됩니다. 이 볼륨 지속성 출력은 설정을 사용할 수 없는 컨텍스트와 분리합니다. 서비스 볼륨과 명명된 선언을 검토 가능하게 유지하고 소스 분류 및 경로를 독립적으로 확인하세요.
변환기는 -v 짧은 구문을 유지하고 --mount를 직접 번역해야 한다고 경고합니다.
두 번째 콜론 뒤의 옵션 — ro, z 및 Z 및 --mount의 key=value 형식이 동일한 내용을 나타내는 방법. 증거: --mount가 올바르게 사용되었지만 지원되지 않는 것으로 보고되었습니다. 변환기는 -v 짧은 구문을 유지하고 --mount를 직접 번역해야 한다고 경고합니다. 추측하는 대신 볼륨 지속성 예외에서 중지하세요. 서비스 볼륨 및 명명된 선언 근처에 추가하려면 소스 분류 및 경로와 연결된 배포별 이유가 필요합니다.
또 다른 볼륨 예외 제약 조건은 이 볼륨 섹션의 경우 이 볼륨 섹션에 대한 원본 명령과 이 볼륨 섹션에 대한 경고를 이 후보 파일 옆에 유지해야 한다는 것입니다. 증거: 저장소는 더 넓은 런타임이나 기록 증거를 제공하지 않습니다. 경고 옆에 원래 볼륨 지속성 명령을 유지하십시오. 비교를 통해 어떤 서비스 볼륨과 명명된 선언에 포함되어 있는지, 어떤 소스 분류 및 경로 결정이 수동으로 유지되는지 보여줍니다.
작업 예: -v pgdata:/var/lib/postgresql/data 및 -v /srv/pg/init:/docker-entrypoint-initdb.d:ro — 둘 다 Compose YAML로 마운트됩니다.
작업 예: -v pgdata:/var/lib/postgresql/data 및 -v /srv/pg/init:/docker-entrypoint-initdb.d:ro — 둘 다 Compose YAML로 마운트됩니다. 합성 이름으로 볼륨 지속성 예제를 구축합니다. 생산 소스 분류 및 경로 세부 정보를 노출하지 않고도 모든 서비스 볼륨 및 명명된 선언 항목을 추적 가능하게 만듭니다.
동일한 볼륨 예제 샘플은 별도의 볼륨 예제 경계가 볼륨 목록을 통해 지속성 가정을 검토 가능하게 한다는 점을 보여줍니다. 증거: 볼륨 목록을 통해 지속성 가정을 검토할 수 있습니다. 페어링된 볼륨 지속성 사실은 서비스 볼륨 및 명명된 선언에 표시되어야 합니다. 해당 라인을 기록하고 소스 분류 및 경로에 대한 가정을 피하십시오.
상대 경로 의미는 최종 Compose 파일 위치에 따라 다릅니다. 변환기가 해결하지 못함
상대 경로 — docker run이 아닌 파일을 기준으로 Compose에서 허용되므로 변환 후에만 ./가 표시됩니다. 증거: 향후 Compose 디렉터리를 확인하지 않고도 상대 문자열이 보존됩니다. 상대 경로 의미는 최종 Compose 파일 위치에 따라 달라집니다. 변환기가 이를 해결하지 못합니다. 볼륨 지속성 결과를 관찰 가능한 하나의 서비스 볼륨 및 명명된 선언 차이로 변환합니다. Docker는 이후의 소스 분류 및 경로 판정을 소유합니다.
볼륨 결과 구현은 또한 이 볼륨 섹션에 대한 이 볼륨 섹션 명령 및 경고를 이 볼륨 섹션 옆에 표시합니다. 볼륨 결과 사실은 이 볼륨 섹션에 대해 브라우저가 이 볼륨 섹션에 기여한 내용을 정의합니다. docker는 여전히 이 볼륨 섹션에 대한 볼륨 결과 런타임 판정을 소유합니다. 이 볼륨 섹션 저장소에 대한 볼륨 결과 보안 정책은 여전히 필요합니다. 이 볼륨 섹션에 대해 생성된 서비스를 설명할 때 이 볼륨 섹션에 대한 책임을 별도로 유지합니다. 분할 볼륨 지속성 책임: 변환은 서비스 볼륨 및 명명된 선언을 작성하고 저장소는 비밀을 제거하며 운영자는 소스 분류 및 경로의 유효성을 검사합니다.
여기서 다루지 않는 내용 — 자체 키가 있는 볼륨 드라이버, NFS 지원 볼륨 및 tmpfs 마운트
여기서 다루지 않는 내용 — 자체 키가 있는 볼륨 드라이버, NFS 지원 볼륨 및 tmpfs 마운트. 증거: --tmpfs는 별도로 매핑되지만 볼륨 드라이버에는 수동 구성이 필요합니다. 여기에 표시된 서비스 볼륨 및 명명된 선언 분기로 볼륨 지속성 범위를 제한합니다. 인접한 양식 및 기본값은 소스 분류 및 경로 질문에 답할 수 없습니다.
볼륨 범위 제한이 하나 더 있습니다. 별도의 볼륨 제한 경계는 단순 이름, 호스트 경로, 상대 경로, 변수 및 Windows 드라이브가 다르게 분류된다는 것입니다. 이 볼륨 지속성 경계를 제외로 처리합니다. 소스 분류 및 경로에 대한 추측보다 정확한 서비스 볼륨과 명명된 선언을 선호합니다.
요약: 세 가지 중 어떤 것이 있는지 파악하고 변환기는 각 항목을 확인할 수 있도록 볼륨 목록을 표시합니다.
요약: 세 가지 중 무엇을 가지고 있는지 파악하세요. 변환기는 각 볼륨을 확인할 수 있도록 볼륨 목록을 표시합니다. 소스 옵션, 모델 필드, 서비스 볼륨, 명명된 선언 라인 및 경고로 볼륨 지속성을 감사합니다. 소스 분류 및 경로를 확인하기 전에 비밀을 제거하세요.
마지막으로 볼륨 테이크아웃 소스는 명명된 소스가 최상위 볼륨에서 null 선언을 얻는다는 별도의 볼륨 결정 경계를 확인합니다. 볼륨 지속성을 좁게 유지: 서비스 볼륨 및 명명된 선언이 후보입니다. 소스 분류, 경로 및 쉘 동등성은 보장되지 않습니다.