Lewis's Tech Keep
[Linux] 리눅스 컨테이너 본문
왜 찾게 되었는지
- 계기
리눅스 컨테이너를 좀 정리 해야겠다고 생각하게 된 계기는 도커를 공부하면서 알고 싶어졌다.
처음 도커를 어떻게든 알려고 모 A회사의 인터넷 강의를 결제했는데 강의 자체는 나쁘지 않았지만, 너무 A-to-Z 따라하기만 있어서 답답했다. 왜 써야하는 지 컨테이너, 이미지, 실행 시 어떤 점을 주의해야 하는 지 등등 디테일이 없었다.
이에 눈물을 머금고 다른 B회사 강의를 커리큘럼, 블로그까지 다 체크하고 결제했는데 원리와 같은 것이 나오면서 도커가 리눅스 컨테이너 기술이라는 것을 알게되었다. 그래서 하는 김에 한번 정리도 해보고 한다.
(꼭 강의 살 때 커리큘럼 체크 잘 하시길 ㅠㅠ)
리눅스 컨테이너란?
- 개념
리눅스 컨테이너란 시스템에서 나머지 부분으로부터 격리된 1개 또는 여러 프로세스들의 집합이다.
컨테이너 실행 시 실행에 필요한 모든 파일이 고유의 이미지(=컨테이너 이미지)에서 제공된다.
컨테이너 방식과는 다른 가상화(virtualization)는 hypervisor를 통해 os를 만들고 그 위에 필요한 앱들을 올리기 때문에 컨테이너 방식만큼 경량화될 수 없다.
이 프로세스 격리를 통해 작동하는 컨테이너 방식은 이러한 경량화, 그리고 os를 여러 개 만들지 않기 때문에 모든 컨테이너에서 os를 공유하고 있어 서비스, 어플리케이션을 계속 가볍게 유지할 수 있다.
리눅스 컨테이너란
A Linux® container is a set of 1 or more processes that are isolated from the rest of the system.
참고[https://www.redhat.com/en/topics/containers/whats-a-linux-container]
리눅스 컨테이너란 시스템에서 나머지 부분으로부터 격리된 1개 또는 여러 프로세스들의 집합이다.
컨테이너 이미지란
A container image is a static file with executable code that can create a container on a computing system. A container image is immutable
참고[https://www.aquasec.com/cloud-native-academy/container-security/container-images/]
컨테이너 이미지란 시스템에서 컨테이너를 만드는 실행가능한 코드들이 들어있는 파일(컨테이너 실행에 필요한 파일과 설정값 등을 포함)이고 이미지는 불변값(immutable)입니다.
가상화 vs 컨테이너
- 가상화 & 컨테이너 차이
- 참고 링크
리눅스 컨테이너
https://www.redhat.com/ko/topics/containers/whats-a-linux-container
컨테이너 이미지
https://www.aquasec.com/cloud-native-academy/container-security/container-images/
도커 관련
https://subicura.com/2017/01/19/docker-guide-for-beginners-1.html
https://searchitoperations.techtarget.com/definition/Docker-image