본문 바로가기

DevOps/Docker

[Docker] Docker의 개요

Docker의 개요

애플리케이션의 실행에 필요한 환경을 하나의 이미지로 모아두고, 그 이미지를 사용하여 다양한 환경에서 애플리케이션 실행 환경을 구축 및 운용하기 위한 오픈소스 플랫폼이다. 도커는 컨테이너 기술을 사용하고 있다.

즉, 개발, 테스트, 실제 개발 환경을 구축해놓은 상태에서 개발을 하고 테스트, 운영까지도 동일하게 실행이 될 수 있게 제공을 한다는 것이다. 도커는 인프라환경을 컨테이너로 관리하며 이미지를 통해 데이터를 가져온다.

이미지를 관리할 수 있는 하나의 레포지토리인 Docker hub에서 공유를 한다.


도커 개발 환경

도커 개발 환경

  • 프로그래머가 Docker를 사용하여 개발한 애플리케이션의 실행에 필요한 모든 것이 포함된 Docker 이미지를 생성
  • 이 이미지는 컨테이너의 바탕이 되어 Docker를 사용할 수 있는 환경이라면 어디서든 개발 제품을 이용가능
  • 이러한 환경은 '개발/테스트환경에서는 움직이지만 제품/환경에서는 움직이지 않는다' 의 리스크를 줄임
  • 이로서 지속적 딜리버리 (CD : Continuous Delivery)를 가능하게 한다.

애플리케이션의 이식성 (Portability)

  • 한 번 만들면 어디서든지 움직이는 소프트웨어의 특성을 의미.
  • Docker는 이식성이 높기 때문에 클라우드 시스템과 친화력도 높다.

도커의 기능

도커를 가지고 우리는 무엇을 할 수 있을까? 크게 보면 세가지로 나누어서 설명한다

  • Docker의 이미지를 만드는 기능 (Build)
  • Docker의 이미지를 공유하는 기능 (Ship)
  • Docker 컨테이너를 작동시키는 기능 (Run)

Build

  • 이미지를 만드는 기능 컨테이너를 가지고 서비스를 구성할 수 있다.
  • AWS에서 EC2인스턴스를 생성할 때 사용하는 AMI파일, VirtualBox에서 사용하던 ova파일과 비슷한 개념이다.
  • 이처럼 도커 내의 이미지를 이용하는 기능이 존재한다.
  • 이러한 이미지 파일을 생성하는 기능을 Build라고 한다.

Ship

  • 이미지를 공유하는 기능이다. 도커 허브라는 곳에서 도커의 이미지를 공유하고 내려받기가 가능하다.
  • 원하는 이미지를 다운받을 수 있고 내 이미지를 업로드를 할 수 있다. 
  • 도커에서 인증한 공식 이미지들이 존재한다.

https://hub.docker.com

 

Docker Hub Container Image Library | App Containerization

We and third parties use cookies or similar technologies ("Cookies") as described below to collect and process personal data, such as your IP address or browser information. You can learn more about how this site uses Cookies by reading our privacy policy

hub.docker.com

# 회원가입 후 이용하면 된다.


Run

  • 컨테이너를 작동시키는 기능.
  • Docker 이미지를 가지고 있다면 Docker가 설치된 환경이라면 언제, 어디서든지 컨테이너를 작동 시킬 수 있다.
  • Docker 명령어를 통해 컨테이너의 실행, 정지, 삭제 등이 가능하다.
  • 가상화 기술의 경우 서버 기능을 실행하려면 OS실행부터 시작하기에 시간이 걸리지만 Docker의 경우는 이미 움직이고 있는 OS상에서 프로세스를 실행시키는것과 같이 빠른 속도로 실행이 가능하다. ( 큰 장점이다 )

'DevOps > Docker' 카테고리의 다른 글

[Docker] Container 생성, 시작 및 정지  (0) 2021.09.16
[Docker] Docker 이미지 조작  (0) 2021.09.16
[Docker] 웹 서버 작동해보기  (0) 2021.09.13
[Docker] Docker 설치  (0) 2021.09.13
[Docker] 컨테이너  (0) 2021.09.13