본문 바로가기
Container/Docker

Docker Container Kernel 문제.

by ccclog 2023. 11. 28.
반응형

CentOS에 대한 지원 종료로 인해, 
CentOS를 잘 활용하지 않게 되었다. 

대다수 Ubuntu에서 작업을 수행하고 있다. 
CentOS7 기반에서만 수행되는 1개의 잡이 존재하는데, 

해당 작업 실행시 마다, OS 설치 혹은 OS 디스크를 
하나를 별도로 잡아두고 있다. 

이러한 CentOS로 인한 리소스를 줄여보고자, 
Host OS  Ubuntu 23.04 에 Docker를 통해 CentOS7(7.9)컨테이너를 만들어서 
해당 작업을 수행해보고자 했다.

해당 작업을 컨테이너상에서 실행할 때, Kernel 문제로 인해 해당 잡이 실행되지 않는 문제가 발생했다. 

CentOS 7의 커널버전은 3.XX임에 비해,
Host OS Ubuntu 23.04의 커널버전은  5.XX임을 확인했다. 
허나 CentOS7으로 구성된 컨테이너에서 커널버전을 확인했을때, 
5.XX임을 확인했다. 


<Host OS Ubuntu 23.04의 커널버전>


<컨테이너 CentOS 7.9의 커널버전>


<별도로 설치한 CentOS7.7의 커널버전>


-> 컨테이너의 Kernel 버전은 Host OS 를 따라감 확인했다. 

슬프게도 컨테이너의 장점은,,, HostOS와의 커널공유였다,. 


Docker는 VM이 아닌, 단지 Process이며, Host Kenel을 변경할 수 없다. 
https://stackoverflow.com/questions/32841982/how-can-docker-run-distros-with-different-kernels

**VM이나 멀티부팅으로 눈을 돌려봐야 겠다.

 

How can Docker run distros with different kernels?

How can docker run on a Debian host maybe an OpenSUSE in a container? It uses different kernel, with separated modules. Also older Debian versions have used older kernels, so how can run it on a ke...

stackoverflow.com

<Docker관련글>

Docker란?
Docker --help
Docker image 업로드 방법.
Docker 기본 커맨드
Docker 컨테이너 생성/진입 후 OS 정보 확인.
Docker 컨테이너에서 Nvidia driver
Docker 컨테이너별로 Nvidia GPU 분할방법 2가지
Docker Container Kernel 문제.
CentOS7.7-Missing a signature key:Docker CE버전설치

반응형