대표적으로 사용되는 remote 이미지 레지스트리가 있습니다. docker hub
, aws ECR
등등..
근데 이미지를 어딘가 remote상에 올리고 싶을 때마다 돈을 내야한다니.. 가난한 학생한테는 있을 수 없는 일입니다.
이러한 도커 이미지 레지스트리를 직접 서버에 띄워 관리해 사용할 수 있습니다.
매우 쉽더라..!
sudo docker run -d --name docker-registry -p 5000:5000 registry
명령어 한줄이면 됩니다. 호스트포트의 5000번 포트와 registry 컨테이너 포트 5000를 매핑해서 run을 호출합니다.
그럼 도커 허브에서 알아서 registry 이미지를 pull 받아서 컨테이너를 띄웁니다.
sudo docker tag image-name 127.0.0.1:5000/image-name
remote registry에 push하고자하는 이미지에 태그를 달아줍니다.
sudo docker push 127.0.0.1:5000/image-name
push 명령어를 이용해 이미지를 원격 레지스트리에 업로드합니다. 이제 어느 로컬에서든 이미지가 필요할 때마다 해당 레지스트리에서 pull 받을 수 있습니다.
sudo docker pull 127.0.0.1:5000/image-name