본문 바로가기
DevOps/Docker

3. Docker 이미지 관리 (Docker 이미지 소개, Dockerfile을 사용한 커스텀 이미지 빌드, Docker 이미지 레지스트리 활용)

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

 

이전 글에서는 Ubuntu에 Docker 설치하고, Docker CLI을 사용한 기본적인 명령어와 Docker 네트워킹 및 데이터 볼륨 설정을 알아보았습니다. 이번 글에서는 지난 번 글의 'docker run hello-world'에서 'hello-world'에 해당하는 Docker Image(도커 이미지)의 소개하고, Dockerfile을 사용하여 커스텀 이미지를 만들어보겠습니다. 그리고 이를 Docker Hub와 같은 도커 이미지 레지스트리를 활용하여 공유하는 과정을 다뤄보겠습니다.

1. Docker 이미지 소개

Docker 이미지는 컨테이너 실행에 필요한 파일, 라이브러리, 환경 설정 등을 포함하고 있습니다. 다음은 Docker 이미지의 생성과 사용에 대한 개념을 이해하는데 도움이 되는 몇 가지 포인트입니다.

1. Docker 이미지는 Dockerfile이라는 텍스트 파일에 정의된 빌드 지침을 통해 생성됩니다

2. 이미지는 계층(layer)으로 구성되어 있으며, 변경 사항이 있는 계층만 다시 빌드하고 배포할 수 있습니다.

3. 동일한 이미지로 여러 개의 컨테이너를 생성하여 확장성과 일관성을 유지할 수 있습니다.

2. Dockerfile을 사용한 커스텀 이미지 빌드

Dockerfile은 사용자가 컨테이너 이미지를 생성하기 위해 사용하는 텍스트 파일입니다. Dockerfile을 사용하여 사용자 정의 이미지를 빌드하는 과정은 다음과 같습니다.
1. Dockerfile을 작성합니다. Dockerfile은 베이스 이미지, 패키지 설치, 환경 설정 등의 사항을 포함합니다.
2. Docker CLI를 사용하여 Dockerfile을 빌드하고 이미지를 생성합니다.
3. 생성된 이미지를 사용하여 컨테이너를 실행하거나 배포합니다.
4. Dockerfile을 작성하고 Docker CLI를 사용하여 이미지를 빌드하는 방법은 Docker 공식 문서와 다양한 자습서에서 자세히 설명되어 있습니다.

3. Docker 이미지 레지스트리 활용

Docker 이미지 레지스트리는 이미지를 저장하고 공유하는데 사용되는 중앙 저장소입니다. 가장 널리 알려진 Docker 이미지 레지스트리 중 하나는 Docker Hub입니다. Docker Hub를 사용하여 이미지를 공유하고 다운로드할 수 있습니다. Docker Hub 이외에도 다른 Docker 이미지 레지스트리도 있으며, 필요에 따라 사용할 수 있습니다. Docker 이미지를 Docker Hub에 업로드하려면 Docker CLI를 사용하여 이미지를 태그하고 푸시하는 과정을 수행해야 합니다. 이러한 과정은 Docker Hub 및 기타 Docker 이미지 레지스트리의 문서에서 자세히 설명되어 있습니다.

추가) 도커 이미지에 대한 간략한 다이어그램

출처:https://www.geeksforgeeks.org/what-is-docker-registry

이 글에서는 Docker 이미지를 소개하고, Dockerfile을 사용한 사용자 정의 이미지 빌드, 그리고 Docker Hub와 같은 Docker 이미지 레지스트리 활용에 대해 알아보았습니다. Docker 이미지를 이해하고 생성하는 과정을 통해 애플리케이션을 패키징하고 배포하는데 Docker의 강력한 기능을 활용할 수 있습니다. 다음 글에서는 이 내용을 기반으로 실습하는 일련의 과정을 소개해보도록 하겠습니다.

댓글