Комментарии 9
Я таким баловался на чистом питоне 4 года назад: github.com/Friz-zy/pyspaces
Для интересующихся есть небольшой список похожих программулек, а так же вполне себе работающие песочницы, помимо уже известных docker контейнеров и иже с ними
Может глупый вопрос, но…
Если ядро линукс позволяет встроенным функционалом изолировать процессы, то зачем в докерфайлах декларируется используемая ОС, а в образах еще и записывается все необходимое ей?
И почему тогда нельзя копировать состояние текущей ос при запуске контейнера, меняя только необходимые параметры?
Поздравляю, вы изобрели концепцию LXC или, скажем, FreeBSD Jails:) Шутка, конечно, но — с некоторыми оговорками — вполне соответствует вашему варианту. Вот остроумная реализация такой "магии" руками. Только Docker позволяет делать это всё заметно проще и не только это.
Не могу не скинуть интересные (на мой взгляд) доклады про устройство Docker и идеи контейнеризации вообще:
Во первых вы можете запускать обе софтины на одном ядре, во вторых каждый контейнер самодостаточен, все нужные файлы окружения он берет с собой.
Более того, Dockerfile описывает как собрать вообще все окружение нужное процессу.
Иначе пришлось бы на каждой машине создавать окружение нужное конкретным процессам.
Очень интересно, и очень простой понятный слог. Пожалуйста, продолжайте.
В данной текущей статье возник только один вопрос — к предложению “Настроить пайп таким образом, чтобы процесс выполнения команды начинал её запуск только после получения сигнала от основного процесса о завершении настройки namespace” — вопрос «например, какой настройки?»
Если честно, Python Junior'у не очень понятно, что происходит (но в Google не забанен, поэтому буду ещё разбираться), но, если прикрепите какие-нибудь статьи для подготовки к чтению остального — будет круто.
Спасибо ещё раз за материал:)
Глубокое погружение в Linux namespaces