brunch

매거진 개발실습

You can make anything
by writing

C.S.Lewis

by SKKRYPTO Apr 18. 2020

도커시리즈 - 도커가 무엇인가요?

안녕하세요 skkrypto 3.5기 박유정입니다. 이번 시간에는 도커가 무엇인지 알아보도록 하겠습니다



도커란?

리눅스 컨테이너를 기반으로 하여 특정한 서비스를 패키징하고 배포하는데 유용한 오픈소스 프로그램입니다. 



도커를 왜 사용해야 하냐면

특정한 소프트웨어를 개발한 이후에 배포하고자 할 때 해당 프로그램이 어디에선가 손쉽게 구동이 되도록 하기 위해서 입니다. 예를 들어 특정한 서버 환경에 우리가 만든 웹 서비스를 맞추어서 배포해야 할때 갖가지 설정이 필요 같은 리눅스라고 해도 리눅스 버전에 따라서 설치 방법이 다르기 때문입니다. 




도커를 사용하면

1. 운영표준화

- 작은 컨테이너식 애플리케이션 사용하면 손쉽게 배포하고, 문제 파악하고, 수정 위해 롤백 할 수 있음 

2. 지속적인 통합 및 제공

- 환경 표준화하고 언어 스택 및 버전 간의 충돌 제거함으로써 애플리케이션 더욱 빠르게 제공

3. 마이크로서비스

- Docker 컨테이너 통해 표준화된 코드 배포 활용하여 분산 애플리케이션 아키텍처 구축하고 확장

이 세가지가 가능합니다 .





도커의 시작은 Solomon Hykes가  2013년 PyCon에서 컨테이너에 대해 발표함으로서 시작되었습니다. 순식간에 별도의 운영체제를 생성함으로서 엄청난 혁신을 일으켰죠

기본적으로 도커는 Docker Engine에 의해 동작되고 Google Go 언어로 발전되어 있습니다. Go 언어는 서버 모듈에 의해 빠르게 동작합니다. 현재 Go로 개발된 소프트웨어 중에 가장 잘나가고 있는 언어가 바로! 도커입니다




Virtual Machine


도커 이전에는 뭘 사용했냐구요?

가상머신 즉 Virtual Machine을 사용했습니다. 즉 윈도우 운영체제를 사용하는 사람이면 가상머신위에서 리눅스 등 다양한 운영체제를 구성하는 형태였죠!

하지만 Host OS (윈도우)와 Guest OS(리눅스) 가 사실상 완전히 별개로 존재할 수 있기 때문에 서로 의존적이지 않았습니다. 그리고 속도가 다소 느리고 용량이 크다는 단점이 있죠! 



도커의 컨테이너

하지만 도커의 컨테이너는 다릅니다!

도커 엔진위에서 작동하고 Guset OS가 사용되지 않기 때문에 성능적으로 매우 개선되었고 메모리 용량도 적게 차지하죠! 




도커 엔진의 기본단위는 다음과 같습니다. 저희는 이미지와, 컨테이너에 대해서 설명드릴 예정입니다.

이미지(Image)란?

-컨테이너를 생성할 때 필요한 요소

-가상 머신을 생성할 때 사용하는 iso 파일과 비슷한 개념

-우분투, CentOS 등 기본적인 리눅스 운영체제부터 아파치 웹서버, MySQL 데이터 베이스 등 다양함  


컨테이너(Container)란?

-이미지의 목적에 맞는 파일이 들어 있는 파일 시스템과 격리된 시스템 자원 및 네트워크를 사용할 수 있는 독립된 공간

-이미지를 읽기 전용으로 사용하되 이미지에 변경된 사항만 컨테이너 계층에 저장 


이미지와 컨테이너는 위와 같은 특성을 가지고 있습니다.





저희 브런치에서는 윈도우 환경에서 도커를 사용하는 법을 설명하겠습니다

Window 환경에서 도커를 설치하는 경우 – 1. Docker Toolbox , 2. Docker for Windows

둘 중 하나만 골라서 설치해야 합니다!  


도커 툴박스의 경우? Host 운영체제에 리눅스 가상 머신을 생성하고 그 안에 도커 설치 -> 1.Host 운영체제에 리눅스 가상 머신을 생성하고 그 안에 도커 설치를 합니다


도커 for windows의 경우? 자체 가상화 기술로 리눅스 환경을 만든 후 컨테이커 생성

- 도커 레벨에서의 설정만으로 외부에서 컨테이너로 접근가능합니다.



Docker Toolbox(도커 툴박스)  – Windows 10 pro 기준으로 설치 방법을 설명드리겠습니다. 



1. 우선 본인의 컴퓨터가 가상화를 지원하는지 확인합니다 


2. 

https://github.com/docker/toolbox/releases

다음 사이트를 가서 프로그램을 다운 받습니다


 

3. 설치하면서 git이 설치되어 있으면 체크 해제를 해주시구요 



4. Docker Quick Start 를 눌러 고래모양이 잘 나오는지 확인합니다 



이상 도커의 기본적인 개념과 도커 설치방법에 대해서 설명드렸습니다.

다음 브런치에는 도커 명령어에 대해서 설명드리겠습니다! 

매거진의 이전글 Geth puppeth 2편 - POA
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari