CentOS Docker 컨테이너가 Ubuntu라고 말하는 이유는 무엇입니까?

CentOS Docker 컨테이너가 Ubuntu라고 말하는 이유는 무엇입니까?

확인하려고 해요Ubuntu용 Docker 컨테이너 이미지 파일을 선택할 때 파일 간에 일치해야 하는 것은 무엇입니까?

Lubuntu에서는 CentOS 컨테이너를 CentOS라고 합니다.

$ sudo docker run centos bash -c "cat /etc/*-release "
CentOS Linux release 7.6.1810 (Core) 
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

CentOS Linux release 7.6.1810 (Core) 
CentOS Linux release 7.6.1810 (Core) 

그러나 또한 호스트 시스템과 동일한 Ubuntu라고 말합니다.

$ sudo docker run centos bash -c "cat /proc/version"
Linux version 4.15.0-46-generic (buildd@lgw01-amd64-038) (gcc version 7.3.0 (Ubuntu 7.3.0-16ubuntu3)) #49-Ubuntu SMP Wed Feb 6 09:33:07 UTC 2019


$ cat /proc/version
Linux version 4.15.0-46-generic (buildd@lgw01-amd64-038) (gcc version 7.3.0 (Ubuntu 7.3.0-16ubuntu3)) #49-Ubuntu SMP Wed Feb 6 09:33:07 UTC 2019
  1. 이 두 명령이 OS 배포판과 커널 버전에서 왜 다른지 궁금합니다.

  2. 컨테이너가 호스트와 동일한 커널을 공유합니까? 그렇다면 커널 버전이 동일해야 합니까?Ubuntu용 Docker 컨테이너 이미지 파일을 선택할 때 파일 간에 일치해야 하는 것은 무엇입니까?"배포판이나 커널 버전을 일치시킬 필요는 없습니다."라고 말합니다.

답변1

cat /proc/version커널 버전을 표시합니다. 컨테이너는 호스트와 동일한 커널에서 실행되기 때문입니다. 호스트 시스템과 동일한 코어를 갖습니다.

cat /etc/*-release릴리스 버전을 표시합니다. 커널을 뺀 OS 버전입니다.

컨테이너는 가상화가 아니지만 Linux 커널에서 직접 실행되는 격리된 시스템입니다. 커널 네임스페이스와 cgroup을 사용합니다. 네임스페이스는 별도의 네트워크, 프로세스 ID, 마운트 지점, 사용자, 호스트 이름 및 프로세스 간 통신을 허용합니다. cgroup은 리소스 제한을 허용합니다.

답변2

  1. 제공된 출력에서 ​​CentOS 커널 정보를 찾을 수 없으며 버전 릴리스(7.6.1810)만 찾을 수 있습니다.
  2. 예, 컨테이너는 호스트의 커널을 공유합니다.

업데이트 확인이것답변.

관련 정보