반응형
Docker란 뭐지?
요새 구인사이트를 보거나 사람들끼리 야이기 하다보면 도커, 마이크로서비스, 데브옵스, AWS 이야기에 대해서 많이 듣는 거 같다. 그래서 도커는 도대체 뭐지? 라는 생각을 가지고 공부를 시작했다.
Docker 정의
- 컨테이너 기술을 사용하여 애플리케이션의 실행 환경을 구축 및 운용하기 위한 플랫폼으로 애플리케이션 실행에 필요한 것을 하나로 모아두고 그 이미지를 사용하여 다양한 환경에서 애플리케이션 실행환경을 구축 및 운용하기 위한 오픈소스 플랫폼이다.
프로그래머에게 Docker란
- 도커를 설치하면 Docker 이미지를 각각의 환경에 똑같이 적용할 수 있다.
[일반적인 시스템 개발 흐름]
[Docker를 사용한 시스템 개발 흐름]
컨테이너(Container)
- host OS 상에 논리적인 구획(컨테이너)를 만들고, 애플리케이션을 작동하기 위해 필요한 라이브러리나 애플리케이션등을 하나로 모아, 별도의 서버인 것 처럼 사용할 수 있게 만드는 것.
컨테이너 장점
hostOS의 리소스를 논리적으로 분리시키고 여러 개의 컨테이너가 공유하여 상용한다.
컨테이너는 오버헤드가 적기 떄문에 가볍고 속도가 빠르다는 것이 특징.
OS나 디렉토리, IP주소 등과 같은 시스템 자원을 마치 각 애플리케이션이 점유하고 있는 것처럼 할 수 있다.
On-premise(온프래미스) : 자사에서 데이터센터를 보유하고 시스템 구축부터 운용까지 모두 수행하는 형태
커테이너와 가상머신
컨테이너 | 가상머신 |
---|---|
컨테이너는 기본적으로 Linux에서 실행되며 호스트 시스템의 커널을 다른 컨테이너와 공유합니다. 다른 실행 파일보다 더 많은 메모리를 사용하지 않고 별도의 프로세스를 실행하여 가볍다. | 반대로 가상 컴퓨터 (VM)는 하이퍼 바이저를 통해 호스트 리소스에 대한 가상 액세스 권한을 가진 완전한 "Guest" OS를 실행합니다. 일반적으로 VM은 대부분의 응용 프로그램에 필요한 것보다 많은 오버헤드와 리소스를 차지한다. |
Docker의 기능
Docker 이미지 생성기능 (Build)
- 애플리케이션의 실행에 필요한 프로그램 본체, 라이브러리, 미들웨어 등을 하나로모아서 Docker이미지 생성
Docker 이미지 공유기능 (Ship)
- Docker레지스트리에서 공유가능하며 Docker Hub에서 ubuntu나 CentOS와 같은 리눅스 배포판의 기본기능을 제공하는 베이시 이미지를 배포할 수 있다.
Docker 컨테이너를 작동시키는 기능 (Run)
- 리눅스 상에서 컨테이너 단위로 서버를 작동시킨다. 그래서 Docker이미지만 있으면 어느 서버든 작동할 수 있다.
Docker Edition
- Docker Community Edition(CE)
- Docker사가 제공하는 무료 Docker 에디션으로 로컬환경에서 사용하는 경우 상용지원이 불필요한 환경에서 애플리케이션 환경을 이용할 때 적합.
- Docker Enterprice Edition(EE)
- Docker사가 제공하는 유로 에디션으로 Basic, Standard, Advanced 세 종류가 있다.
- Basic은 지원 및 Docker Sotore에서 인증이 끝난 컨테이너, 인증이 완료된 플러그인을 제공
- Standard는 Basic + LDAP나 Active Directory와 통합 가능한 Docker Datacenter를 이용가능
- Advanced는 보안기능을 제공
참조
http://naver.me/IxLvWg3n
https://docs.docker.com/get-started/
완벽한 IT 인프라 구축을 위한 Docker
반응형
'CI-CD > Docker' 카테고리의 다른 글
6. Docker container (0) | 2023.04.19 |
---|---|
5. docker image 조작 (0) | 2023.04.19 |
4. 도커에서 웹 서버 작동하기(Nginx 설치하기) (0) | 2023.04.19 |
3. Docker 기본 명령어 (0) | 2022.08.29 |
2. 도커 설치 (0) | 2019.06.21 |