docker 또는 podman 볼륨 간에 데이터 전송
그래서 이것을 쉽게 만드는 파이썬 스크립트를 만들었습니다. 나는 그것을
cvcp
- 컨테이너 볼륨 cp(사본)라고 부릅니다. 그러나 실제로는 cp
를 사용하지 않습니다. 데이터 전송에 rsync
를 사용합니다. 따라서 rsync
가 설치된 컨테이너 이미지가 필요합니다.https://github.com/jeet-parekh/cvcp 에서 스크립트를 찾을 수 있습니다. 저장소에는
Dockerfile
가 설치된 이미지를 빌드하는 rsync
도 포함되어 있습니다.cvcp 사용
리포지토리에서 파일
cvcp
을 다운로드하고 원하는 경로에 넣습니다. 나는 ~/bin
를 선호한다.그런 다음
cvcp
를 사용하려면 다음을 수행하십시오.cvcp SOURCE DESTINATION
컨테이너 볼륨 내부의 경로는
<volume_name>:<path_inside_volume>
로 작성해야 합니다.SOURCE
또는 DESTINATION
는 로컬 경로 또는 컨테이너 볼륨 내부의 경로일 수 있습니다. 그러나 SOURCE
및 DESTINATION
모두 로컬 경로가 될 수 없습니다.옵션 없이
cvcp
를 사용하면 Docker Hub에서 rsync
이미지를 가져오고 루트가 있는 docker( sudo docker
)를 사용합니다.다음 명령줄 옵션을 사용하여 동작을 사용자 지정할 수 있습니다.
--docker
및 --podman
docker
입니다. --rootless
sudo
없이). --image
rsync
가 설치되어 있어야 합니다. 자세한 내용은 다음 섹션을 읽으십시오. --rsync-opts
rsync
에 전달할 옵션. ' --verbose'
. rsync
에서 사용하는 기본cvcp
옵션이 지워지므로 필요한 모든 옵션을 전달해야 합니다. ' -a --progress'
입니다. --no-exec
사용자 정의 이미지 사용
cvcp
와 함께 사용자 정의 이미지를 사용하려면 --image
인수를 사용하십시오.cvcp
가 사용하는 기본 이미지를 영구적으로 변경하려면 cvcp
스크립트 파일에서 다음 행을 변경하십시오.RSYNC_IMAGE = "image_name"
사용자 정의 이미지에
rsync
가 설치되어 있어야 합니다. 동일한 리포지토리 내의 Dockerfile을 기반으로 사용하여 이미지를 빌드할 수 있습니다.# docker
sudo docker build -t localhost/rsync .
# podman
podman build -t localhost/rsync .
Reference
이 문제에 관하여(docker 또는 podman 볼륨 간에 데이터 전송), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/jeetparekh/transferring-data-across-docker-podman-volumes-3c9a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)