도커 이미지 공유하기
도커를 사용하여 쉽게 이미지를 공유할 수 있습니다.
이미지가 있는 모든 사람은 그 이미지를 기반으로 컨테이너를 만들 수 있습니다. 그러므로 이미지는 공유를 하지만 컨테이너는 독립적이기 때문에 공유하지 않습니다.
방법
1. Dockerfile과 소스코드 공유
Dockerfile과 소스 코드를 공유하면 다른 사용자가 해당 Dockerfile을 기반으로 이미지를 직접 빌드하고 컨테이너를 실행할 수 있습니다.
이미지를 빌드하기 위해 필요한 모든 정보를 공유하는 방식입니다.
2. 빌드된 이미지 공유
빌드된 이미지 전체를 공유합니다. 이미지를 받은 사용자는 이미지를 다운로드하고 즉시 컨테이너를 실행할 수 있습니다.
이미지에 필요한 모든 것이 포함되어 있으므로 별도의 빌드 단계가 필요하지 않습니다.
도커 이미지 공유하고 배포하기
도커를 사용하면 이미지를 공유하고 다른 사용자와 협업하는 것이 간단해집니다 또한 도커에는 이미지 공유를 위해 내장된 명령이 있습니다. 이것이 도커의 핵심 메커니즘입니다.
이미지를 공유할때 이미지를 Push 할 수 있는 두가지 위치가 있습니다. (Push는 업로드, Pull 다운로드를 말합니다.)
1. 도커 허브
도커 허브는 공식 도커 이미지 레지스트리로, 무료로 사용할 수 있는 서비스입니다. 많은 공식 이미지 및 사용자가 만든 이미지를 저장하고 공유할 수 있으며, 이곳에 이미지를 업로드하고 공유할 수 있습니다.
2. 개인 레지스트리
도커 사용자는 도커 허브 외에도 자체 개인 레지스트리를 설정하여 이미지를 업로드하고 공유할 수 있습니다. 여러 클라우드 제공업체와 독립된 레지스트리 서비스를 사용하여 개인 프로젝트나 팀 협업을 위한 이미지 저장소를 관리할 수 있습니다.
DockerHub에 이미지 Push하기
도커 허브는 공식 도커 이미지 레지스트리로 무료로 사용할 수 있습니다. 또한 이미지를 저장하기 위해 저장소(repository)를 생성해야합니다. 저장소 이름과 설명을 지정하며 공개/비공개로 설정할 수 있습니다.
먼저 이미지를 저장소에 업로드 하려면 해당 이미지에 저장소 이름을 붙여야합니다. 로컬 환경에서 이미지를 빌드한 후, 해당 이미지에 새 이름을 지정하고 이미지를 도커 허브에 푸시하는 것입니다.
docker tag [기존이미지_이름] [사용자_이름]/[저장소_이름]
docker tag를 사용하면 기존 이미지의 이름을 바꿉니다.
docker push [사용자_이름]/[저장소_이름]
Push하기전에 로그인을 해야합니다.
docker login
DockerHub에 이미지 Pull하기
docker pull [사용자_이름]/[저장소_이름]
위 명령은 항상 컨테이너 레지스트리에서 이미지의 최신 버전을 가져옵니다. 또한 로그인을 할 필요가 없습니다.
docker run의 경우도 로컬 컴퓨터에서 이미지를 찾지 못하면 DockerHub에서 확인하여 실행하기 때문에 가능은 하지만 최신 버전을 가져오지는 않습니다.
'Docker' 카테고리의 다른 글
도커 볼륨 읽기 전용 설정, Dockerfile 환경 변수 및 빌드 타임 인수 (2) | 2023.10.31 |
---|---|
도커 데이터 관리 및 볼륨/바인드 마운트 (2) | 2023.10.31 |
도커 이미지 & 컨테이너 관리 (0) | 2023.10.25 |
도커 이미지와 레이어 기반 아키텍처 (0) | 2023.10.25 |