2017-09-15 6 views
1

일부 Docker Windows 컨테이너를 실행합니다. 이 컨테이너를 백업 할 방법을 찾고 있는데, 입니다. 내가 백업 컨테이너의 standart 방법을 사용하려고 할 때, 나는 이러한 오류를 얻을 :백업 도커 윈도우 실행 컨테이너

PS C:\Users\roza> docker commit 908d6334d554 
Error response from daemon: windows does not support commit of a running container 
PS C:\Users\roza> docker export 908d6334d554 -o tar.tar 
Error response from daemon: the daemon on this platform does not support export of a container 

내가 커밋 수없는 이유/내보내기 윈도우 컨테이너를 실행 ?

이러한 컨테이너의 백업을 만드는 방법 (외부 도구를 사용하지 않는 경우가 많고 매우 까다 롭습니다.)이 있습니까?

+0

Windows 컨테이너에 제한 사항이 있는지 확실하지 않습니다. 데몬에서 오류 응답 : 난 그냥 또 다른 오류가 발생,하지만 당신은'고정 표시기 일시 정지 을 시도 할 수있다'다음'고정 표시기가 를 저지 '하고 실제로 –

+0

을 할 수 있는지 용기 908d6334d5548f09ba6d3eeac5b38f56025c44b7056ef56c39edae06c003c252 일시 중지 할 수 없습니다 : 컨테이너 908d6334d5548f09ba6d3eeac5b38f56025c44b7056ef56c39edae06c003c252를 일시 중지하는 동안 오류가 발생했습니다 : 실패 Windows 시스템 호출에서 : 요청이 지원되지 않습니다. (0x32) –

답변

1

이것은 듣고 싶지는 않지만 ... 컨테이너 세계에서는 실행중인 컨테이너의 백업이 필요하지 않습니다. 컨테이너가있을 때 무언가를 잃어 버리면 이미지가 더 잘 분할되어야합니다. 컨테이너가 종료 된 후 생존해야하는 모든 항목 (로그, 자산 또는 임시 폴더)은 볼륨으로 매핑되어야합니다. 그러면 백업을보다 강력하게 제어 할 수 있습니다.

1

Windows 컨테이너를 커밋하려면 먼저 중지 한 다음 커밋해야합니다. 또 다른 한계는 VSS 기반 응용 프로그램이 컨테이너와 상호 운용되지 않는다는 것입니다. 이전의 대답이 제시했듯이 컨테이너에 대한 표준 접근법은 단순히 이미지에서 새로운 컨테이너를 회전시키는 것입니다.

1

Microsoft의 Windows 이미지 (모든 Windows 이미지)는 라이센스가 부여되어 있으며 해당 라이선스의 일부는 사용자가 이미지를 내보낼 수 없다는 것을 의미합니다. 일시 중지/일시 중지 해제가 부족하다는 것은 기본 구현 때문입니다. Linux는 Windows가 아닌 cgroup을 일시 중지합니다. Windows HyperV 컨테이너는 HyperV 명령을 사용하여 일시 중지를 지원합니다.


는 고정 표시기에서 아무것도 백업 말했다 3 가지 백업을 포함한다 :

  • 이미지 레지스트리 서버
  • 컨테이너의 구성, 바람직하게는 고정 표시기-compose.yml 파일
  • 볼륨 데이터

컨테이너 자체를 백업하지는 않습니다. 일시적이며 treate입니다. d 소처럼. 볼륨 데이터는 파일 시스템 디렉토리가 될 것이므로이 디렉토리에서 표준 백업 도구를 사용하십시오. 컨테이너가 실행 중일 때 백업 할 수 없으면 먼저 컨테이너를 중지하고 백업이 완료된 후 컨테이너를 다시 시작하십시오.