контейнер linux отображает неверную информацию

70
7

* Я запускаю контейнер linux в докере с конкретным процессором *

набрав команду "cat/proc/cpuinfo" в контейнере, контейнер показывает полную спецификацию ноутбука, а не только контейнер. почему это может произойти?

спросил(а) 2014-01-29T07:25:00+04:00 6 лет, 8 месяцев назад
1
Решение
71

LXC не предоставляет виртуализованное ядро - ядро распределяется между хостом и всеми контейнерами. Поэтому, когда вы смотрите на файловую систему /proc, вы (часто) видите, что видит ядро, а не пределы контейнера.

Вы можете ограничить свой контейнер для работы на определенных процессорах, но я не знаю, как обмануть ваш контейнер, думая, что в системе нет других процессоров.

Аналогичным образом, top запуск в контейнере покажет вам полную RAM, доступную на хосте, даже если вы ограничите память контейнера.

Я не знаю способа для контейнера, чтобы узнать его собственные пределы, но из хоста вы можете собрать много показателей. См. Http://blog.docker.io/2013/10/gathering-lxc-docker-containers-metrics/

ответил(а) 2014-01-29T22:53:00+04:00 6 лет, 8 месяцев назад
40

Когда мы делаем виртуализацию на уровне операционной системы, ядро операционной системы допускает несколько изолированных экземпляров пользовательского пространства. мы можем выделить Память и ЦП каждому контейнеру согласно вашему требованию. Это можно сделать либо при создании контейнера времени выполнения, либо после создания контейнера. Логически все инструменты виртуализации, используемые для создания файла конфигурационного файла памяти и использования ЦП.


Теперь вы можете выделить несколько долей ЦП в контейнер с опцией -c, как описано здесь

ответил(а) 2014-01-30T10:30:00+04:00 6 лет, 8 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема