도커 허브와 이미지 그리고 컨테이너

728x90
반응형

출처 : 그림과 실습으로 배우는 도커 & 쿠버네티스, 시작하세요! 도커/쿠버네티스

 

도커 이미지는 컨테이너를 만드는 빵틀같은 것이며, 도커 허브는 인터넷 상에 도커 이미지를 모아놓은 곳이다. 도커의 장점은 도커 허브와 도커 이미지에서 기인하는 바가 크다.

 

이미지와 컨테이너

  • 컨테이너를 생성하려면 먼저 이미지를 만들어야 한다.
  • 이미지는 컨테이너의 설계도(운영체제나 소프트웨어를 설치할 때 사용되는 ISO 파일과 비슷) 역할을 한다.

 

이미지는 금형과 같다

  • 이미지는 컨테이너를 만드는 데 사용한다.
  • 우리가 실제로 사용하는 것은 컨테이너이며, 이미지를 그대로 사용하는 일은 없다.
  • 이미지는 빵틀, 금형 같은 역할을 하는 것으로, 하나의 이미지로 여러 개의 컨테이너를 만들 수 있다. 따라서 동일한 컨테이너를 여러 개 배치하기 편리하다.
  • 이미지의 이름은 기본적으로 [저장소 이름]/[이미지 이름]:[태그]의 형태로 구성된다.
    • ex) alicek106/ubuntu:14.04 (alicek106:저장소 이름, ubuntu:이미지 이름, 14.04:이미지 버전)
    • 저장소(Repository) : 이미지가 저장된 장소를 의미. 저장소 이름이 명시되지 않은 이미지는 도커 허브의 공식 이미지이다. 이미지르 생성할 때 저장소 이름을 명시할 필요는 없기 때문에 생략하는 경우도 있다.
    • 이미지 이름 : 해당 이미지가 어떤 역할을 하는지 나타냄. ubuntu 컨테이너를 생성하기 위한 이미지라는 것을 알 수 있다. 이미지 이름은 생략할 수 없으며 반드시 설정해야 한다.
    • 태그 : 이미지의 버전 관리, 혹은 리비전 관리에 사용. 일반적으로 14.04처럼 버전을 명시하지만 태그를 생략하면 도커 엔진은 이미지의 태그를 latest로 인식한다.

 

컨테이너로도 이미지를 만들 수 있다

  • 이미지로만 컨테이너를 만들 수 있는 것이 아니라, 컨테이너로도 이미지를 만들 수 있다.
  • 컨테이너로 이미지를 만드는 것은 이미 만든 컨테이너에 손을 대서 컨테이너의 금형을 새로이 만드는 과정이다.
  • 개조된 컨테이너로부터 이미지를 만들고 나면 새로 만든 이미지를 사용해 개조된 컨테이너를 여러 개 만들 수 있다. 예를 들어, 소프트웨어나 시스템을 넣은 새로운 이미지를 만들면 다수의 서버를 준비하는 작업이 매우 간단해진다.

 

도커 엔진 간에 이동이 가능하다

  • 동일한 컨테이너를 여러 개 만들지 않더라도 다른 물리 서버에 설치된 도커 엔진으로 컨테이너를 이동시킬 수 있다.
  • 컨테이너는 도커 엔진만 설치돼 있으면 구동이 가능하므로 다른 서버나 컴퓨터에 도커 엔진을 설치하고 새로운 도커 엔진에 이미지를 이용해 똑같은 컨테이너를 생성하면 된다.
  • 컨테이너 자체가 이동하는 것은 아니지만 이미지를 통해 컨테이너가 이동한 것과 같은 효과를 얻을 수 있다.

 

 

도커 허브와 도커 이미지

  • 도커 이미지는 주로 '도커 허브'에서 구하게 된다(https://hub.docker.com). 도커 허브는 공식적으로 운영되는 도커 레지스트리의 이름이다.
  • 도커 허브는 공개된 컨테이너 이미지가 모여있는 곳이다. 누구든지 이미지를 등록하고 공개할 수 있고, 원하는 컨테이너 이미지를 내려받을 수 있다.

 

도커 허브에 공개된 이미지

  • 도커 허브에는 운영체제(비슷한 것)만 들어있는 이미지부터, 여러 가지 소프트웨어가 함께 포함된 것까지 다양한 이미지가 제공된다.
  • 리눅스에는 다양한 배포판(Rocky Linux, Ubuntu, CentOS, RHEL)이 있는데, 주요 배포판은 모두 이미지로 제공된다. 또한 배포판의 버전마다 운영체제만 들어간 컨테이너도 별도로 제공된다.
  • 여기에 소프트웨어(프로그램)가 들어가므로 다양한 이미지가 존재한다.
  • 공식 컨테이너 이미지가 제공되는 아파치, MySQL로 운영체제 및 소프트웨어 버전을 조합할 수 있다.
  • 이러한 이미지로 컨테이너를 생성하면 해당 이미지의 목적에 맞는 파일이 들어 있는 파일 시스템과 격리된 시스템 자원 및 네트워크를 사용할 수 있는 독립된 공간이 생성된다. 이것이 바로 도커 컨테이너가 된다.

 

안전한 컨테이너 이미지를 고르는 법

  • 공식 이미지를 사용한다.
  • 커스텀 이미지를 직접 만들어 사용한다.

 

다양한 형태로 조합이 가능한 컨테이너

  • 컨테이너는 이미지의 선택 외에도 다양한 조합을 고려해야 한다.
  • 도커를 사용할 때의 원칙 중 하나로 '헌 컨테이너에 한 프로그램'이라는 것이 있다. 말 그대로 하나의 프로그램만 담긴 컨테이너를 사용한다는 의미로, 보안 및 유지 관리 측면에서 유리하기 때문에 많이 사용하는 정책이다.
  • 예를 들어, 워드프레스를 사용하려면 웹 서버 소프트웨어, DBMS, 워드프레스로 3 가지 소프트웨어가 필요하다.
  • 우리는 이전에 아파치, MariaDB, 워드프레스 3가지 소프트웨어를 써서 워드프레스를 구축해보았다. 
 

12장. 웹 서버 설치 및 운영 (2) - 워드프레스를 활용한 웹사이트 구축

출처 : https://www.youtube.com/watch?v=87s35dMmhaI&list=PLVsNizTWUw7FqN2gq79Cb3R6qkS7mqOJk&index=63 워드프레스를 활용한 웹 사이트 구축 실습 목표 오픈 소스 웹사이트 통합 구성 도구인 워드프레스를 설치하여 운영

zangwoo.tistory.com

 

  • 도커를 사용해 워드프레스를 구축하는 방법은 이들을 별도의 컨테이너로 구성할 수도 있고, 한 컨테이너에 모두 집어넣는 방법도 있다.

 

 

728x90
반응형