Linux 커널에 영향을 미치는 취약점이 발견되면 Docker로 어떻게 해야 합니까?

Linux 커널에 영향을 미치는 취약점이 발견되면 Docker로 어떻게 해야 합니까?

Docker를 실행하는 Ubuntu 호스트 시스템이 있다고 가정해 보겠습니다.

FROM이 호스트에는 ubuntu, alpine, java:8...과 같은 다양한 기본 이미지( )를 사용하는 실행 중인 컨테이너가 많이 포함되어 있습니다.

이 호스트에는 손으로 만든 일부 이미지도 포함되어 있습니다.

오늘은 모든 컨테이너를 중지하고 제거한 다음 다시 만들 수 있습니다. 이미지에는 데이터가 저장되지 않습니다(컨테이너를 커밋하지 않음). 따라서 내 데이터를 잃는 것은 문제가 되지 않습니다. 이미지가 동일하게 유지되는 한 서비스를 다시 시작하는 것은 문제가 되지 않습니다.

Linux 커널에 영향을 미치는 취약점이 발견되었다고 가정해 보겠습니다.

호스트가 더 이상 취약하지 않도록 호스트 OS를 업데이트했습니다. Docker 컨테이너는 호스트의 커널을 사용하여 실행되지만, 그것으로 충분합니까? 내 컨테이너가 취약점의 영향을 받지 않도록 하려면 어떤 고려 사항과 조치를 취해야 합니까?

답변1

도커 컨테이너는 호스트 커널을 사용하기 때문입니다. 호스트 커널이 업데이트되면 컨테이너에 문제가 발생하지 않습니다.

도서관의 문제는 또 다른 이야기입니다. 예를 들어 Openssl은 컨테이너와 호스트가 다를 수 있으므로 업그레이드해야 하는 라이브러리입니다.

apt-get update && apt-get -q -y upgradeDockerfile 상단에 를 포함하는 것이 좋습니다 . 따라서 정기적으로 이미지를 구축해야 합니다.

공식 이미지를 사용하는 경우 정기적으로 가져오기를 수행하여 컨테이너를 업그레이드하는 것이 좋습니다. docker-compose를 사용하는 경우:

docker-compose pull && docker-compose up -d

그것은 그들을 업그레이드할 것입니다. 일반 도커의 경우 끌어오기를 수행해야 합니다. 컨테이너를 삭제하고 동일한 볼륨을 가리키는 최신 컨테이너를 만듭니다.

docker pull image
docker stop containerid && docker rm containerid
docker run image ....

문안 인사

관련 정보