컨테이너는 앱과 실행에 필요한 파일을 한 묶음으로 만들어, 호스트의 커널 위에서 격리된 프로세스로 실행하는 방식입니다. 이 글에서는 가상 머신과 무엇이 다른지, 리눅스의 namespace와 cgroup이 격리를 어떻게 만드는지, Docker가 어떤 구성 요소를 거쳐 컨테이너를 띄우는지 정리합니다.컨테이너부터 Kubernetes까지 시리즈 1편입니다. 전체 순서는 시리즈 목차에 있고, Docker 설치는 [Docker] Docker 설치와 자주 쓰는 명령어 정리를 참고합니다.1. 컨테이너가 필요한 이유"제 PC에서는 되는데 서버에서는 안 돼요"는 대부분 실행 환경 차이에서 생깁니다. 파이썬 버전, 설치된 라이브러리, OS 설정이 조금만 달라도 같은 코드가 다르게 동작합니다. 컨테이너는 앱과 앱이 쓰는 라이..