2017-09-21 5 views
0

젠킨스 컨테이너를 실행 중이고 컨테이너 커밋에 격리 된 구성을 갖고 싶습니다. 문제는 도커가 마운트 된 볼륨의 변경을 커밋하지 않으므로 마운트 해제해야한다는 것입니다.탑재 된 볼륨의 내용을 커밋하십시오.

도커 마운트 볼륨을 디렉토리의 변경을 커밋 할 수있는 방법이 있습니까?

나는 볼륨 바인딩을위한 읽기 전용 옵션을 읽었습니다. 그게 도움이 될까요?

답변

0

불행히도이 기능을 사용할 수 없습니다. 여러 번 제안되었지만 개발자가 받아 들일 수 없습니다. 주된 이유는 이식성입니다. 볼륨은 이미지의 일부가 아니며 이미지 외부에 저장됩니다.

그러나 간접적으로 동일한 것을 확인할 수는 있습니다.

  1. docker commit 명령을 사용하여 컨테이너에 커밋하십시오.
  2. 백업하려는 컨테이너의 볼륨을 사용하는 새 dumy 컨테이너를 시작하십시오. 콘테이너 내의 일단

    docker run -volumes-from <container-name> --name backup -it ubuntu bash

  3. 볼륨이 장착 된 폴더 타르.

  4. 복사

    고정 표시기의 CP 백업을 사용하여 호스트에 더미 컨테이너에서 볼륨 타르 : volume.tar

지금 당신이 가지고있는 여러 옵션 :

  1. 이 만들기 Dockerfile을 사용하는 새로운 이미지 :

    FROM commited-container-image COPY volume.tar . RUN tar -xf volume.tar -C path-to-volume-mount-point &&\ rm -f volume.tar

  2. 또는 압축을 푸 볼륨 백업 및 바인드가에서 만든 새 용기에 마운트로 마운트 이미지를 컨테이너 투입

+0

아 괜찮아요 나는 그것을 얻을. 내 콘테이너에 들어가서, 내가 "포트"하고 싶고 다음에 이들을 새로운 이미지로 복사하고 싶은 파일을 보관해야합니다. – xetra11