Podman: Запускаем контейнеры без Docker. Быстро, безопасно и без демонов.
Многие привыкли, что контейнеры = Docker. Но в мире Linux набирает популярность Podman — инструмент, который делает то же самое, но с несколькими ключевыми улучшениями, особенно важными для безопасности и системной интеграции.
▪️ Главные отличия от Docker:
Нет демона: Podman работает без постоянного фонового процесса (dockerd), который требует прав root. Каждый контейнер запускается как дочерний процесс пользователя. Это снижает поверхность атаки.
Rootless-режим: Вы можете запускать контейнеры от имени обычного пользователя, без sudo. Изоляция на уровне ядра не позволит такому контейнеру получить права администратора на хосте.
Интеграция с systemd: Podman умеет генерировать systemd-юниты для ваших контейнеров, позволяя управлять ими как обычными системными службами.
▪️ Quick Start: Попробуем прямо сейчас
Команды практически на 100% совпадают с Docker, поэтому переучиваться не придется.
Установка:
Запуск первого контейнера (Nginx):
Bash
-d: запуск в фоновом режиме.
--name: имя контейнера.
-p: проброс порта.
Просмотр запущенных контейнеров:
Bash
Управление контейнером как systemd-сервисом:
Это киллер-фича. Создадим systemd-юнит для нашего Nginx.
Bash
Теперь ваш контейнер будет стартовать вместе с вашей пользовательской сессией и управляться как обычная служба!
Вывод: Podman — это отличная, более безопасная и системно-интегрированная альтернатива Docker для запуска одиночных контейнеров на Linux-серверах.
#Podman #Containers #Linux #DevOps #Security #Systemd
Многие привыкли, что контейнеры = Docker. Но в мире Linux набирает популярность Podman — инструмент, который делает то же самое, но с несколькими ключевыми улучшениями, особенно важными для безопасности и системной интеграции.
▪️ Главные отличия от Docker:
Нет демона: Podman работает без постоянного фонового процесса (dockerd), который требует прав root. Каждый контейнер запускается как дочерний процесс пользователя. Это снижает поверхность атаки.
Rootless-режим: Вы можете запускать контейнеры от имени обычного пользователя, без sudo. Изоляция на уровне ядра не позволит такому контейнеру получить права администратора на хосте.
Интеграция с systemd: Podman умеет генерировать systemd-юниты для ваших контейнеров, позволяя управлять ими как обычными системными службами.
▪️ Quick Start: Попробуем прямо сейчас
Команды практически на 100% совпадают с Docker, поэтому переучиваться не придется.
Установка:
sudo apt install podman или sudo dnf install podman
Запуск первого контейнера (Nginx):
Bash
# Обратите внимание, никакого 'sudo'
podman run -d --name my_nginx -p 8080:80 docker.io/library/nginx
-d: запуск в фоновом режиме.
--name: имя контейнера.
-p: проброс порта.
Просмотр запущенных контейнеров:
Bash
podman ps
# CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
# a1b2c3d4e5f6 docker.io/library/nginx:latest nginx -g 'daemon o... 2 minutes ago Up 2 minutes ago 0.0.0.0:8080->80/tcp my_nginx
Управление контейнером как systemd-сервисом:
Это киллер-фича. Создадим systemd-юнит для нашего Nginx.
Bash
# Генерируем .service файл
podman generate systemd --name my_nginx > ~/.config/systemd/user/nginx.service
# Перезагружаем демона systemd для user-сессии
systemctl --user daemon-reload
# Запускаем и включаем автозагрузку сервиса
systemctl --user start nginx.service
systemctl --user enable nginx.service
Теперь ваш контейнер будет стартовать вместе с вашей пользовательской сессией и управляться как обычная служба!
Вывод: Podman — это отличная, более безопасная и системно-интегрированная альтернатива Docker для запуска одиночных контейнеров на Linux-серверах.
#Podman #Containers #Linux #DevOps #Security #Systemd
План на неделю: 3 технологии, на которые стоит потратить время
Воскресенье — лучший день, чтобы инвестировать в себя и спланировать обучение. Вот три технологии из разных областей, изучение которых сделает вас более ценным специалистом уже на этой неделе.
Для админов Windows: Chocolatey
Что это: Мощный, управляемый сообществом менеджер пакетов для Windows. "Старший брат" Winget.
Зачем: У Chocolatey огромный репозиторий пакетов и расширенные возможности для скриптов установки/удаления. Умение работать и с Winget, и с Chocolatey позволяет решать 100% задач по автоматизации ПО в Windows-среде. Это признак эксперта.
Для админов Linux: Podman
Что это: Движок для контейнеров без демона, позиционируется как полная замена Docker.
Зачем: Podman по умолчанию работает в режиме rootless (без прав суперпользователя), что гораздо безопаснее. Он нативно интегрируется с systemd для управления жизненным циклом контейнеров. Понимание его преимуществ — это шаг в сторону современных и более защищённых контейнерных сред.
Для всех (концепция): Zero Trust (Нулевое доверие)
Что это: Модель безопасности, основанная на принципе «никогда не доверяй, всегда проверяй». В ней нет понятия «внутренней доверенной сети». Каждый запрос, даже внутри периметра, должен быть аутентифицирован и авторизован.
Зачем: Это будущее корпоративной безопасности в мире облаков и удалённой работы. Изучите базовые понятия: микросегментация, Identity-Aware Proxy (IAP), MFA. Это изменит ваш подход к проектированию сетей и доступов.
Выберите одну тему и посвятите ей пару вечеров. Какой будет ваш выбор?
#career #learning #windows #chocolatey #linux #podman #security #zerotrust
Воскресенье — лучший день, чтобы инвестировать в себя и спланировать обучение. Вот три технологии из разных областей, изучение которых сделает вас более ценным специалистом уже на этой неделе.
Для админов Windows: Chocolatey
Что это: Мощный, управляемый сообществом менеджер пакетов для Windows. "Старший брат" Winget.
Зачем: У Chocolatey огромный репозиторий пакетов и расширенные возможности для скриптов установки/удаления. Умение работать и с Winget, и с Chocolatey позволяет решать 100% задач по автоматизации ПО в Windows-среде. Это признак эксперта.
Для админов Linux: Podman
Что это: Движок для контейнеров без демона, позиционируется как полная замена Docker.
Зачем: Podman по умолчанию работает в режиме rootless (без прав суперпользователя), что гораздо безопаснее. Он нативно интегрируется с systemd для управления жизненным циклом контейнеров. Понимание его преимуществ — это шаг в сторону современных и более защищённых контейнерных сред.
Для всех (концепция): Zero Trust (Нулевое доверие)
Что это: Модель безопасности, основанная на принципе «никогда не доверяй, всегда проверяй». В ней нет понятия «внутренней доверенной сети». Каждый запрос, даже внутри периметра, должен быть аутентифицирован и авторизован.
Зачем: Это будущее корпоративной безопасности в мире облаков и удалённой работы. Изучите базовые понятия: микросегментация, Identity-Aware Proxy (IAP), MFA. Это изменит ваш подход к проектированию сетей и доступов.
Выберите одну тему и посвятите ей пару вечеров. Какой будет ваш выбор?
#career #learning #windows #chocolatey #linux #podman #security #zerotrust
Linux: Ваш chroot на стероидах. Знакомство с distrobox
У вас на рабочей машине (или сервере) CentOS, но вам срочно нужен инструмент, который есть только в Ubuntu? Или нужно протестировать скрипт в Arch Linux?
Раньше вы бы ставили VirtualBox или мучились с chroot. Сегодня есть distrobox.
distrobox — это утилита, которая использует podman или docker для запуска любого дистрибутива Linux, но делает это с глубокой интеграцией в вашу основную систему.
Как это работает: Вы запускаете:
Bash
В чем магия:
* Ваш HOME проброшен внутрь.
* USB-устройства, графика (включая GUI-приложения!) — все работает.
* Вы можете установить zsh в ubuntu-box, и он появится в списке оболочек вашей основной системы.
* Вы можете запустить VS Code из ubuntu-box так, будто он установлен у вас.
Это одноразовые, чистые окружения, которые не загрязняют вашу основную ОС.
Взгляд архитектора: Это воспроизводимость и изоляция. Архитектор не держит на своей рабочей станции "зоопарк" из 1000 пакетов. Он держит distrobox и создает чистые, изолированные среды для каждой задачи, гарантируя, что его инструменты не конфликтуют.
#linux #distrobox #docker #podman #devops #sysadmin #гайд
У вас на рабочей машине (или сервере) CentOS, но вам срочно нужен инструмент, который есть только в Ubuntu? Или нужно протестировать скрипт в Arch Linux?
Раньше вы бы ставили VirtualBox или мучились с chroot. Сегодня есть distrobox.
distrobox — это утилита, которая использует podman или docker для запуска любого дистрибутива Linux, но делает это с глубокой интеграцией в вашу основную систему.
Как это работает: Вы запускаете:
Bash
# Создаем "коробку" с Ubuntu 22.04
distrobox create -n ubuntu-box -i ubuntu:22.04
# Входим в нее
distrobox enter ubuntu-box
В чем магия:
* Ваш HOME проброшен внутрь.
* USB-устройства, графика (включая GUI-приложения!) — все работает.
* Вы можете установить zsh в ubuntu-box, и он появится в списке оболочек вашей основной системы.
* Вы можете запустить VS Code из ubuntu-box так, будто он установлен у вас.
Это одноразовые, чистые окружения, которые не загрязняют вашу основную ОС.
Взгляд архитектора: Это воспроизводимость и изоляция. Архитектор не держит на своей рабочей станции "зоопарк" из 1000 пакетов. Он держит distrobox и создает чистые, изолированные среды для каждой задачи, гарантируя, что его инструменты не конфликтуют.
#linux #distrobox #docker #podman #devops #sysadmin #гайд
👍2🥰2
🚀 DevOps: Podman 5.0 — запускаем контейнеры без Root и лишних демонов 🛡️
Если ты всё еще используешь Docker-демона, который крутится под рутом, у нас для тебя новости из 2026 года. Podman окончательно стал взрослым. Главная фишка пятой версии — полностью переписанный сетевой стек (pasta), который сделал Rootless-контейнеры (запуск от обычного юзера) такими же быстрыми, как и обычные.
Команды для старта:
Зачем это нужно: Это стандарт безопасности. В 2026 году запуск Docker под root в продакшене без веской причины считается дурным тоном.
#devops #containers #podman #docker #security #sysadmin #admin_future
Если ты всё еще используешь Docker-демона, который крутится под рутом, у нас для тебя новости из 2026 года. Podman окончательно стал взрослым. Главная фишка пятой версии — полностью переписанный сетевой стек (pasta), который сделал Rootless-контейнеры (запуск от обычного юзера) такими же быстрыми, как и обычные.
Техническая суть:
Podman не требует запущенного демона (daemonless) и позволяет запускать контейнеры в изолированных User Namespaces. Если хакер «сломает» контейнер, он окажется внутри системы с правами обычного бесправного пользователя.
Команды для старта:
# Запуск контейнера от обычного пользователя (без sudo!)
podman run -d --name my-app -p 8080:80 nginx
# Генерируем systemd-юнит, чтобы контейнер сам стартовал после ребута
podman generate systemd --name my-app --files --new
Зачем это нужно: Это стандарт безопасности. В 2026 году запуск Docker под root в продакшене без веской причины считается дурным тоном.
#devops #containers #podman #docker #security #sysadmin #admin_future
🐧 Linux: Убиваем демонов. Rootless Podman и systemd-quadlets на страже серверов
В 2026 году крутить жирного демона Docker от пользователя `root` — это не просто моветон, это красная тряпка для любого аудитора ИБ. В условиях тотального импортозамещения и перехода на защищенные отечественные ОС мы давно изолируем всё, что шевелится.
Под капотом:
Мы выкидываем Docker daemon и переходим на rootless Podman. А чтобы не страдать с
Практика:
Создаем файл
Перезагружаем демона и стартуем:
Зачем это нужно:
Если злоумышленник и пробьет ваш веб-сервер, он окажется заперт в непривилегированном user namespace. Нулевой риск компрометации ядра, идеальная интеграция с системными логами и чистая архитектура без лишних прослоек.
#linux #podman #systemd #security #admin_future
В 2026 году крутить жирного демона Docker от пользователя `root` — это не просто моветон, это красная тряпка для любого аудитора ИБ. В условиях тотального импортозамещения и перехода на защищенные отечественные ОС мы давно изолируем всё, что шевелится.
Под капотом:
Мы выкидываем Docker daemon и переходим на rootless Podman. А чтобы не страдать с
docker-compose и кривыми авторестартами, отдаем управление жизненным циклом контейнеров нативному systemd через механизм Quadlets. Вы просто пишете декларативный юнит .container, а systemd сам генерирует сервис, следит за зависимостями, пробрасывает порты и пишет логи в journald. И всё это работает в пространстве обычного пользователя!Практика:
Создаем файл
/etc/containers/systemd/nginx-gost.container для запуска веб-сервера с поддержкой отечественной криптографии:
[Unit]
Description=GOST-enabled Nginx Web Server
After=network-online.target
[Container]
Image=registry.corp.local/nginx-gost:latest
PublishPort=8080:80
Environment=TLS_MODE=strict
Volume=/srv/web:/usr/share/nginx/html:ro
[Install]
WantedBy=multi-user.target
Перезагружаем демона и стартуем:
systemctl daemon-reload
systemctl start nginx-gost.service
Зачем это нужно:
Если злоумышленник и пробьет ваш веб-сервер, он окажется заперт в непривилегированном user namespace. Нулевой риск компрометации ядра, идеальная интеграция с системными логами и чистая архитектура без лишних прослоек.
#linux #podman #systemd #security #admin_future