도커

정지호·2022년 10월 3일
0

기업 특강

목록 보기
17/19
post-custom-banner

1. 도커

  • 컨테이너 기반의 오픈소스 가상화 플랫폼

  • 쉽게 말하면, 도커는 컨테이너를 관리하는 플랫폼이다.

  • 여기서 말하는 컨테이너란 애플리케이션을 환경에 구애받지 않고 실행하는 기술을 말한다.

  • 서버 제작과정에 견고함과 유연성, 편리함이 좋고 다른 사람이 만든 서버를 소프트웨어 사용하듯이 바로 가져다가 사용할수 있는 장점이 있다. 또한 여러 대에 배포할 수 있는 확장성도 지녔다.


2. 도커를 사용하는 궁극적인 이유

1) 환경 표준화

  • 환경이 일정하지 않아서 생기는 문제를 해결할 수 있다.
    개발하려고 하는 여러 어플리케이션을 구동할 때 운영체제가 서로 다르면 환경에 따라 조금씩 변경할 부분이 생긴다. 같은 Linux라고 하더라도 Ubuntu, CentOS, Debian은 서로 다른 환경이므로 여러 버전이 존재할 수도 있다.

2) 개발 혹은 실행에 대한 환경 설정의 코드화

  • 개발된 어플리케이션을 내 컴퓨터에 설치해 사용하고자 할 때 '내 컴퓨터' 혹은 '내 사용 목적'에만 맞는 설정이 따로 필요할 수 있다. 예를 들어 환경 변수처럼 같은 OS라 하더라도 사용자에 따라 달라지는 구성이 있다. 만약 어플리케이션을 설치하거나 실행할 때 홈 디렉토리에 저장해야한다면 모든 사용자가 같은 홈 디렉토리를 사용하진 않을 것이다. 이 외에도 방화벽 설정, 사용자 권한 설정, Port 설정 등 어플리케이션을 설치할 때 컴퓨터에 맞게 변경해줘야하는 부분들이 있다. 이러한 문제를 해결하기 위해 수작업을 하게 된다면 많은 시간이 걸린다. 하지만 도커를 사용하면 환경 설정을 코드화 해놓았기 때문에 편하게 작업을 할 수 있는 것이다.

=> 즉, 표준화의 관점에서 이유를 찾을 수 있다!
=> 도커 컨테이너는 소프트웨어를 소프트웨어 실행에 필요한 모든 것을 포함하는 파일 시스템 안에 감싼다. 이는 실행 중인 환경에 관계 없이 언제나 동일하게 실행될 것을 보증한다.


3. 도커 사용

  • 이미지: 컨테이너 실행에 필요한 파일과 설정값 등을 포함하고 있는 것. 변하지 않음

  • 도커는 레이어(layer)라는 개념을 사용하고, 유니온 파일 시스템을 이용하여 여러개의 레이어를 하나의 파일시스템으로 사용할 수 있게 해준다.

  • webapp 소스를 수정하면 A, B, C, nginx 레이어를 제외한 새로운 source(v2) 레이어만 다운받으면 되기 때문에 굉장히 효율적으로 이미지를 관리할 수 있다.

네이버 클라우드에서 컨테이너로 이미지 관리하기

1) Object storage 생성

  • Container Registry를 생성하기 전에 Object Storage를 먼저 생성해야 한다.

2) Container Registry 생성

컨테이너 레지스트리는 네이버 클라우드 플랫폼의 서버 상품 및 도커 CLI와 통합하여 사용할 수 있다. 도커 CLI를 사용해 도커 컨테이너 이미지를 컨테이너 레지스트리로 쉽게 전달할 수 있고, 이미지를 직접 운영 서버에 가져와 배포할 수 있어 개발부터 서비스 배포까지 필요한 작업을 간소화할 수 있다.


출처
https://subicura.com/2017/01/19/docker-guide-for-beginners-1.html
https://choseongho93.tistory.com/287
https://ko.wikipedia.org/wiki/%EB%8F%84%EC%BB%A4_(%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4)
https://manvscloud.com/?p=1024

profile
정지호
post-custom-banner

0개의 댓글