>  기사  >  운영 및 유지보수  >  도커에 이미지를 저장하는 방법

도커에 이미지를 저장하는 방법

PHPz
PHPz원래의
2023-04-19 14:11:089441검색

클라우드 컴퓨팅의 급속한 발전과 함께 컨테이너화 기술이 점점 더 주목을 받고 있습니다. 컨테이너화 기술의 대표자인 Docker는 강력하고 사용하기 쉬우므로 애플리케이션을 신속하게 구축, 게시 및 배포하는 데 도움이 됩니다.

Docker에서는 미러링이 중요한 개념입니다. 이미지는 애플리케이션에 필요한 모든 코드, 런타임, 라이브러리, 구성 등을 포함하는 가볍고 이식 가능한 소프트웨어 패키지입니다. Docker 이미지를 통해 애플리케이션을 쉽게 배포하고 실행할 수 있습니다.

그러나 실제 사용에서는 Docker 이미지를 관리하고 저장해야 합니다. 이 글에서는 Docker가 이미지를 저장하는 방법을 자세히 소개합니다.

1. Docker 이미지 저장

Docker 이미지는 여러 레이어로 구성됩니다. Docker 이미지를 다운로드할 때 실제로 이미지의 여러 레이어를 다운로드합니다. 이러한 레이어는 Docker 컨테이너에서 사용하기 위해 로컬 호스트의 저장 장치에 읽기 전용 형식으로 존재합니다. 따라서 Docker 이미지를 저장하려면 모든 레이어를 저장해야 합니다.

Docker는 이미지를 저장하는 두 가지 방법, 즉 tarball로 저장하고 Docker Hub로 푸시하는 방법을 제공합니다. 아래에서는 이 두 가지 방법의 구체적인 작업을 각각 소개합니다.

  1. Save as tar 패키지

Docker는 이미지를 tar 패키지로 저장하는 저장 명령을 제공합니다. 이 명령의 구문은 다음과 같습니다.

docker save [OPTIONS] IMAGE [IMAGE...]

그 중 OPTIONS는 선택적 매개변수이고 IMAGE는 저장할 이미지 이름 또는 ID입니다. 예를 들어 centos:7 이미지를 tar 패키지로 저장하려면 다음 명령을 실행할 수 있습니다.

docker save -o centos7.tar centos:7

이 명령은 centos:7 이미지의 모든 레이어를 centos7.tar 파일로 저장합니다. 출력 파일의 경로와 이름을 지정합니다. 저장 후 tarball을 다른 호스트나 저장 장치로 전송하여 다른 환경에서 이미지를 사용할 수 있습니다.

여러 이미지를 저장해야 하는 경우 명령에 여러 이미지 이름이나 ID를 지정할 수 있습니다. 예를 들어 centos:7 및 nginx:latest 두 이미지를 저장하려면 다음 명령을 실행할 수 있습니다.

docker save -o images.tar centos:7 nginx:latest

이 명령은 centos:7 및 nginx:latest 이미지의 모든 레이어를 Images.tar 파일로 저장합니다. .

  1. Docker Hub에 푸시

Docker Hub는 Docker에서 제공하는 공식 이미지 저장소로, 우리가 생성한 이미지를 이 저장소에 푸시하여 다른 곳에서 사용할 수 있습니다.

이미지를 Docker Hub에 푸시하기 전에 Docker Hub 계정을 만들고 해당 계정에 로그인해야 합니다. 계정이 없으면 Docker Hub 웹사이트에서 등록할 수 있습니다.

Docker Hub에 로그인한 후 다음 명령을 실행하여 이미지를 Docker Hub에 푸시할 수 있습니다.

docker login
docker tag IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]
docker push NAME[:TAG]

그 중 IMAGE는 푸시할 이미지의 이름 또는 ID이고, TAG는 이미지의 버전 번호입니다. 기본값은 최신입니다. REGISTRYHOST는 Docker 이미지입니다. USERNAME은 Docker Hub 계정의 사용자 이름입니다.

예를 들어 로컬 myservice 이미지를 Docker Hub의 myservice 이미지 웨어하우스에 푸시하려는 경우 다음 명령을 실행할 수 있습니다.

docker login
docker tag myservice username/myservice:latest
docker push username/myservice:latest

이 명령은 myservice 이미지의 레이블을 username/myservice:latest로 변경하고 이를 다음 위치로 푸시합니다. myservice 미러 저장소의 Docker Hub.

2. Docker 이미지 가져오기 및 로드

저장된 Docker 이미지를 다른 호스트나 환경에서 사용해야 할 경우 가져오거나 로드하여 사용할 수 있습니다.

  1. 이미지 가져오기

다른 호스트나 저장 장치에서 저장된 Docker 이미지 tar 패키지를 얻은 경우 가져오기 명령을 통해 tar 패키지를 Docker 이미지로 가져올 수 있습니다. 이 명령의 구문은 다음과 같습니다.

docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]

그 중 OPTIONS는 선택적 매개변수이고, file|URL|-은 가져올 tar 패키지 경로 또는 URL, REPOSITORY는 가져온 이미지의 이름, TAG는 이미지의 버전 번호입니다.

예를 들어 /home/user/images/centos7.tar에서 centos:7 이미지를 가져오려면 다음 명령을 실행할 수 있습니다.

docker import /home/user/images/centos7.tar centos:7

이 명령은 centos7.tar 파일을 centos로 가져옵니다. 7 이미지. 이미지의 버전 번호를 v1로 지정하려면 다음 명령을 실행할 수 있습니다.

docker import /home/user/images/centos7.tar centos:v1
  1. Load image

Docker Hub 또는 다른 이미지 웨어하우스에서 저장된 Docker 이미지를 다운로드한 경우 이미지를 로드할 수 있습니다. Docker 이미지의 경우 로드 명령을 통해 이 명령의 구문은 다음과 같습니다.

docker load [OPTIONS] < file.tar

그 중 OPTIONS는 선택적 매개변수이며, file.tar는 로드할 tar 패키지의 경로입니다.

예를 들어 /home/user/images/images.tar에서 centos:7 및 nginx:latest 두 이미지를 로드하려는 경우 다음 명령을 실행할 수 있습니다.

docker load -i /home/user/images/images.tar

이 명령은 Images.tar 파일 centos:7 및 nginx:latest. 로드가 완료되면 로컬 호스트에서 이 두 이미지를 사용할 수 있습니다.

3. 요약

이 글에서는 주로 Docker 이미지 저장, 가져오기, 로딩을 소개합니다. 이러한 방법을 통해 Docker 이미지를 쉽게 관리 및 공유하고 애플리케이션 배포 및 전달의 효율성을 향상시킬 수 있습니다.

위 내용은 도커에 이미지를 저장하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.