- 컨테이너란 기술이란?
- 실행에 필요한 모든 파일을 포함한 전체 runtime 환경에서 애플리케이션을 패키징하고 격리할 수 있는 기술
- 전체 기능을 유지하면서 컨테이너화된 애플리케이션을 환경(개발, 테스트, 생산 등) 간에 쉽게 이동할 수 있다.
- 쉽게 설명하면 가상화 기술이라 할 수 있다.
- 호스트 운영체제 위에 여러 개의 격리된 환경을 생성
- 각각의 컨테이너 안에서 애플리케이션을 실행
- Docker란?
- 리눅스 컨테이너에 리눅스 어플리케이션을 프로세스 격리 기술을 사용하여 더 쉽게 컨테이너로 실행하고 관리할 수 있게 해주는 오픈소스 프로젝트
- 일반적으로 도커 엔진 혹은 도커에 관련된 모든 프로젝트를 말한다.
- 컨테이너 기반 가상화 도구
- 애플리케이션을 컨테이너라는 단위로 격리하여 실행하고 배포하는 기술
- Docker 파일, Docker 이미지, Docker 컨테이너의 개념은 무엇인가? 또 서로 어떤 관계인가?
- Docker 파일 : 도커 이미지를 생성하기 위한 설정 파일
- Docker 이미지 : 파일로 어플리케이션 실행에 필요한 독립적인 환경을 포함, 소스 코드, 라이브러리, 종속성, 도구 및 응용 프로그램을 실행하는데 필요한 기타 파일을 포함하는 불변 파일
- Docker 컨테이너 : 응용프로그램을 빠르고 쉽게 시작할 수 있는 portable units이다.
- 가상화(Virtualization) 기술이란 무엇일까?
- 하나의 물리적인 컴퓨터 자원(CPU, 메모리, 저장장치 등)을 가상적으로 분할하여 여러 개의 가상 컴퓨터 환경을 만들어 내는 기술
- 물리적인 컴퓨터 자원을 더욱 효율적으로 사용할 수 있으며, 서버나 애플리케이션 등을 운영한는데 있어 유연성과 안정성을 제공
- Hypervisor란??
- 가상 머신을 생성하고 구동하는 소프트웨어
- OS에 자원을 할당 및 조율, OS들의 요청을 번역하여 하드웨어에 전달
'다양한 Dev. > 기본 정리' 카테고리의 다른 글
2023.09.26 - Swagger(Nest.js) (0) | 2023.09.26 |
---|---|
2023.07.29 - 쿠키와 세션의 차이점 (0) | 2023.07.29 |
2023.06.07 - 명령어 정리 (feat. cmd, vi) (0) | 2023.06.07 |
2023.06.01 - HTTPS란? (0) | 2023.06.01 |
2023.05.30 - Clone coding (0) | 2023.05.30 |