Docker에서 파일 시스템을 복사하는 방법

PHPz
풀어 주다: 2023-04-18 10:32:25
원래의
2758명이 탐색했습니다.

Docker는 애플리케이션을 쉽게 구축, 게시 및 실행할 수 있게 해주는 인기 있는 가상화 도구입니다. 컨테이너 기술을 기반으로 하며 여러 계층을 사용하여 애플리케이션의 다양한 종속성을 관리하므로 애플리케이션을 완전히 격리하고 이식성과 확장성을 높일 수 있습니다. Docker를 사용하다 보면 여러 컨테이너의 파일 시스템을 복사해야 하는 경우가 많습니다. 여기서는 Docker가 파일 시스템을 복사하여 서로 다른 컨테이너 간의 파일 전송 및 공유를 용이하게 하는 방법을 소개합니다.

1. docker cp 명령 사용

Docker 명령줄 인터페이스는 파일을 컨테이너 내부로 복사하거나 컨테이너 내부에서 로컬로 파일을 복사하는 데 사용할 수 있는 Dockerfile cp 명령을 제공합니다. 사용법은 다음과 같습니다.

docker cp [OPTIONS] CONTAINER:SRC_PATH LOCAL_DEST_PATH
docker cp [OPTIONS] LOCAL_SRC_PATH CONTAINER:DEST_PATH
로그인 후 복사

여기서 CONTAINER는 컨테이너의 이름 또는 컨테이너의 ID를 나타냅니다. SRC_PATH는 :를 통해 컨테이너 이름에 연결된 컨테이너의 디렉터리 또는 파일을 나타냅니다. ; LOCAL_DEST_PATH는 컨테이너의 경로를 나타내는 로컬 파일 시스템 경로를 나타냅니다. 로컬로 복사 LOCAL_SRC_PATH는 로컬에서 컨테이너로 복사를 의미하는 로컬 파일 시스템 경로를 나타냅니다. 터미널에 다음 명령을 입력하여 컨테이너의 파일을 로컬로 복사할 수 있습니다. :与容器名称相连;LOCAL_DEST_PATH表示本地文件系统路径,表示从容器复制到本地;LOCAL_SRC_PATH表示本地文件系统路径,表示从本地复制到容器。我们可以在终端中输入以下命令将容器中的文件拷贝到本地:

docker cp my-container:/path/to/file /local/destination
로그인 후 복사

这将把my-container容器中的/path/to/file文件拷贝到/local/destination目录下。

我们还可以使用通配符来拷贝整个目录,如:

docker cp my-container:/path/to/dir/* /local/destination
로그인 후 복사

这将拷贝my-container容器中的/path/to/dir目录内的所有文件和子文件到/local/destination目录。

2.将文件复制到同一网络中的其他容器中

我们常常将多个容器链接在同一网络中,以便进行服务发现和容器间通信。在这种情况下,我们可以使用docker cp

docker inspect --format '{{ .NetworkSettings.IPAddress }}' CONTAINER_NAME_OR_ID
로그인 후 복사
이렇게 하면 my-container/path/to/file 파일이 복사됩니다. /code> 컨테이너 /local/destination 디렉터리에 복사합니다.

다음과 같이 와일드카드를 사용하여 전체 디렉터리를 복사할 수도 있습니다.

docker cp /local_path/file.txt CONTAINER_NAME_OR_ID:/path/within/container/
로그인 후 복사
이렇게 하면 my-container/path/to/dir 디렉터리에 있는 모든 파일이 복사됩니다. code> 컨테이너 파일과 하위 파일을 /local/destination 디렉터리에 복사합니다.

2. 동일한 네트워크의 다른 컨테이너에 파일 복사

우리는 서비스 검색 및 컨테이너 간 통신을 위해 동일한 네트워크의 여러 컨테이너를 연결하는 경우가 많습니다. 이 경우 docker cp 명령을 사용하여 동일한 네트워크의 다른 컨테이너에 파일을 복사할 수 있습니다. 먼저 복사하려는 컨테이너의 IP 주소를 알아야 합니다. 다음 명령을 실행하여 컨테이너의 IP 주소를 얻을 수 있습니다.

docker cp /local_path/filename.txt ssh://user@remotehost:/path/within/container/filename.txt
로그인 후 복사
그러면 컨테이너의 IP 주소가 반환됩니다. 그런 다음 다음 명령을 사용하여 파일을 다른 컨테이너에 복사할 수 있습니다.

rrreee

이렇게 하면 로컬 파일이 동일한 네트워크의 다른 컨테이너에 복사됩니다.

3. 원격 Docker 호스트에 파일 복사 🎜🎜 원격 Docker 호스트에 파일을 복사하려면 SSH를 사용해야 합니다. SSH를 사용하면 안전한 원격 연결을 설정하고 그 안에서 명령을 실행할 수 있습니다. 먼저 키링에 연결하려는 원격 Docker 호스트의 SSH 키를 추가했는지 확인해야 합니다. 그런 다음 다음 명령을 사용하여 파일을 복사할 수 있습니다. 🎜rrreee🎜 그러면 파일이 원격 호스트의 지정된 디렉터리에 복사됩니다. SSH를 통해 원격 Docker 호스트에 연결할 때 사용자는 원격 호스트 및 컨테이너에 액세스할 수 있는 충분한 권한이 있어야 합니다. 🎜🎜요약🎜🎜위의 방법을 통해 docker cp 명령을 사용하여 파일 시스템을 복사하여 서로 다른 컨테이너 간의 파일 전송 및 공유를 용이하게 할 수 있습니다. 이 접근 방식을 사용하면 한 컨테이너에서 다른 컨테이너로 파일을 복사하거나, 컨테이너에서 로컬로 파일을 복사하거나, 원격 Docker 호스트로 파일을 복사하는 등 다양한 시나리오를 구현할 수 있습니다. 이를 통해 Docker를 실제 사용 시 더욱 유연하게 만들어 다양한 요구 사항에 더 잘 대응할 수 있습니다. 🎜

위 내용은 Docker에서 파일 시스템을 복사하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!