가상화기술
date
Mar 26, 2024
slug
개발자를-위한-쉬운-도커-1
status
Public
tags
개발자를 위한 쉬운 도커
author
summary
[개발자를 위한 쉬운 도커] 강의 정리
type
Post
thumbnail
updatedAt
May 28, 2024 12:34 PM
category
🍯 키워드📝 강의 정리[1].서버 운영 방식베어메탈하이퍼바이저컨테이너(*도커)[2]. 가상화 기술과 하이퍼바이저 가상화[3]. 컨테이너 가상화[4]. 도커도커의 아키텍쳐[5]. 컨테이너 실행[5-1]. nginx 컨테이너💻 실습 명령어📎 출처
🍯 키워드
IAC
LXC
컨테이너 플랫폼( 컨테이너 엔진, 컨테이너 런타임 )
📝 강의 정리
[1].서버 운영 방식
베어메탈
하이퍼바이저
컨테이너(*도커)
[2]. 가상화 기술과 하이퍼바이저 가상화
- 하이퍼바이저를 활용한 가상화는 게스트 OS가 개별적 커널을 사용함
- 게스트와 호스트간 커널 통신을 하이퍼바이저가 통역 → 거쳐가는 단계가 증가
[3]. 컨테이너 가상화
하이퍼바이저 없이 커널의 자체 기술을 활용한 가상화( LXC := 리눅스 컨테이너 )
- 컨테이너 가상화는 커널의 격리 기능을 활용
→ 호스트 OS의 커널을 공유
→ 하이버바이저에 비해 상대적으로 오버헤드가 적다.
✅ 호스트 OS의 커널을 공유한다
- 컨테이너들이 커널을 공유함으로써 커널을 실행하는 시간 자체가 없어진다 → 부팅 속도가 빠름
- 오버헤드가 적고 부팅이 빠르다는 장점으로 모던 애플리케이션의 요구사항을 만족했다
- 커널을 공유하기 때문에, 상대적으로 보안이 떨어질 수 있다.
- 호스트 OS의 커널을 공유하기 때문에, 호스트 OS와 다른 OS는 실행할 수 없다.
[4]. 도커
도커의 아키텍쳐
- Client-Server 모델
- 사용자가 명령어 실행
- 사용자 명령을 docker API로 변환(docker cli)
- 도커 데몬에 docker API로 요청
- 응답된 json을 포매팅 후 docker cli에 표시
[5]. 컨테이너 실행
Nginx 웹서버 컨테이너를 실행시켜보고, 해당 컨테이너가 제공하는 웹 페이지에 접속해보기
[5-1]. nginx 컨테이너
실행
- docker run -p 80:80 --name hellonginx nginx
→ 80포트에 hellonginx라는 이름으로 nginx 컨테이너 실행
중지
- 컨테이너 터미널에서
ctrl + c
삭제
- docker rm 컨테이너명
💻 실습 명령어
- docker version
- docker info
- docker --help
- docker run (실행옵션) 이미지명
- docker rm 컨테이너명/ID