본문 바로가기
DevOps/Docker

6. 도커 허브(Docker Hub) 사용법 (이미지 다운로드, 버전관리에 대해)

by 잉크드 2023. 7. 18.
반응형

 

이전 글에서 도커 이미지를 업로드하는 이유를 알아보고, 업로드할 이미지를 생성한 다음 도커 허브에 업로드까지 해보았습니다. 이번 글에서는 업로드된 이미지를 내려받는 방법과 도커 이미지의 버전 관리에 대해서 다뤄보겠습니다.

 

0. 로컬에서 이미지 삭제하기

도커 허브에서 이미지를 다운로드 하기 이전에, 업로드하기 위해 빌드했던 이미지를 로컬에서 제거합니다. 로컬에 설치된 모든 도커 이미지를 삭제하는 명령어는 아래와 같습니다.

docker image rm $(docker images -aq)

특정 도커 이미지를 삭제하는 명령어는 아래와 같습니다.

docker image rm <IMAGEID>

1. 도커 허브에서 이미지 다운로드

도커 허브에서 이미지를 다운로드하려면 먼저 원하는 이미지의 정확한 이름을 알아야 합니다. 그런 다음, 'docker pull' 명령을 사용하여 이미지를 다운로드할 수 있습니다. 우리가 지난 번에 업로드한 이미지를 다운로드하려면 터미널에 아래 명령어를 입력합니다.

docker pull <MYUSERNAME>/myapp:latest

버전의 경우 생략할 수 있으며, 이 경우 가장 최신버전(latest)이 다운로드됩니다.

다운로드한 이미지는 이 글에서 배운 'docker run' 명령어를 사용할 수 있습니다.

docker run -d -p 8080:8080 inkedtomato/myapp

 

정상적으로 동작함을 확인

2. 도커 이미지 버전 관리

'docker pull app:version'에서 'version' 부분에 대해서 얘기해보겠습니다.

이미지를 수정하거나 업데이트할 때마다 새로운 버전의 이미지를 생성해야 합니다. 도커는 이를 위해 태그를 사용합니다. 'latest' 태그는 기본적으로 사용되지만, 구체적인 버전 번호를 사용하여 특정 버전의 이미지를 지정할 수 있습니다. 예를 들어, 'ubuntu' 이미지의 18.04 버전을 다운로드하려면 아래와 같은 명령어를 사용합니다.

docker pull ubuntu:18.04

이와 같이, 버전을 명시적으로 지정하면, 해당 버전의 이미지가 항상 동일하게 유지됨을 보장할 수 있으므로, 어플리케이션의 안정성을 높일 수 있습니다. 또한, 이전 버전의 이미지를 유지하면서 새로운 기능을 추가하거나 버그를 수정한 새로운 버전의 이미지를 배포할 수 있습니다. 이는 서비스의 지속적인 운영과 유지 보수에 큰 도움이 됩니다.

새로운 버전이 무조건 좋은 것 아니냐는 의문을 가지실 수 있으나, "이미 정상적으로 작동하고 있는" 버전에서 "정상적으로 동작할 수도 있는" 버전으로 업데이트 하는 것은 심각한 문제를 야기할 수 있습니다. 

 

 

이 글을 통해 우리는 도커 허브에서 업로드된 이미지를 다운로드하고 사용하는 방법, 그리고 도커 이미지의 버전 관리에 대해 배웠습니다. 이러한 지식은 도커를 사용하는 데 있어 필수적인 부분이며, 효과적인 도커 사용을 위해 알아두어야 합니다. 지금까지 도커를 설치하고, 구조를 이해하고, 도커 이미지를 공유할 수 있는 도커 허브에 접근하는 방법을 알아보았습니다.

다음 글부터는 도커 컴포즈(Docker Compose)와 도커 스웜(Docker Swarm), CI/CD 파이프라인과 통합 등에 대해서 다뤄보도록 하겠습니다. 새로운 내용의 업데이트를 위해 저도 공부할 필요가 있기에, 당분간 도커 카테고리의 글의 업데이트는 없을 것 같습니다. 

댓글