Bug 56197 - Плохая совместимость с podman при создании контейнеров
Summary: Плохая совместимость с podman при создании контейнеров
Status: REOPENED
Alias: None
Product: Sisyphus
Classification: Development
Component: apm (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Semen Fomchenkov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-09-29 13:21 MSK by Иванов Александр Владимирович
Modified: 2025-09-30 10:48 MSK (History)
5 users (show)

See Also:


Attachments
Ошибка при создании контейнера (14.31 KB, image/png)
2025-09-29 13:22 MSK, Иванов Александр Владимирович
no flags Details
Контейнер для образа arch создался, несмотря на сообщение об ошибке (10.76 KB, image/png)
2025-09-29 13:24 MSK, Иванов Александр Владимирович
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Иванов Александр Владимирович 2025-09-29 13:21:05 MSK
Стенды, на которых выполнялось тестирование:
  kworkstation-11.1-x86-64 обновленный до sisyphus
  education-11.0-x86-64-kde обновленный до sisyphus
  education-11.1-x86-64-xfce обновленный до sisyphus
  workstation-11.0-x86-64 обновленный до sisyphus
  server-11.0-x86-64 обновленный до sisyphus

Версия программы: apm-0.1.6-alt1

Шаги, приводящие к ошибке:
1) # apt-get install apm (установка apm)
2) Установить distrobox и podman:
     # apt-get install distrobox
     # apt-get install podman
3) Выполнить команды, чтобы создать контейнеры на основе разных образов(arch, ubuntu и alt):
     $ apm distrobox container create --image arch --name test-container
     $ apm distrobox container create --image ubuntu --name test-container2
     $ apm distrobox container create --image alt --name test-container3

Результат:
Ошибка: Не удалось создать контейнер test-container: exit status 125. Только для образа arch контейнер все равно создается, несмотря на сообщение об ошибке, а для ubuntu и alt контейнер не создаётся.

Ожидаемый результат:
Успешное создание контейнера для всех 3 образов

Дополнительная информация: 
При использовании docker вместо podman такой ошибки нет
Comment 1 Иванов Александр Владимирович 2025-09-29 13:22:21 MSK
Created attachment 19651 [details]
Ошибка при создании контейнера
Comment 2 Иванов Александр Владимирович 2025-09-29 13:24:41 MSK
Created attachment 19652 [details]
Контейнер для образа arch создался, несмотря на сообщение об ошибке
Comment 3 Дмитрий 2025-09-29 13:49:48 MSK
Здравствуйте, во всех образах ALT известных мне (кроме атомарных) не работает rootless-режим для контейнеров podman, так как distrobox рекомендует использовать именно такой режим и я считаю что устанавливать софт с правами root для контейнеров не безопасно, APM в целом запрещает использовать повышенных прав при работе с distrobox.

Конфигурировать систему во время установки пакета нельзя, поэтому APM не исправляет это, а просто ожидают что среда уже должна быть настроена для работы с rootless контейнерами

Примерный список действия что бы починить:
control newuidmap public
control newgidmap public

В этих файлах должны быть перечислены доступные диапазоны пользователя, например:
/etc/subuid:my_user:165536:65536
/etc/subgid:my_user:165536:65536

После изменений инициализировать пользовательскую сессию
podman system migrate
Comment 4 Иванов Александр Владимирович 2025-09-29 14:12:27 MSK
Спасибо, это решило проблему
Comment 5 Сергей Жидких 2025-09-30 10:18:08 MSK
Пользователь не должен гадать, что означает ошибка 125 и какой сакральный смысл заложен автором в эту ошибку. Это создаёт очень некрасивую кривую обучения.
Если ошибка является внутренней ошибкой apm, то должна быть более информативной. Если нет, то должна намекать на возможное решение проблемы. Условно:
> Не удалось создать контейнер <...> (ошибка 125)
> Убедитесь, что настроен rootless режим.
А в документации должно быть строго прописаны ограничения при работе с distrobox.

Поэтому я не считаю, что проблема решена.
Comment 6 Alexander Makeenkov 2025-09-30 10:20:27 MSK
(Ответ для Сергей Жидких на комментарий #5)
> Поэтому я не считаю, что проблема решена.

Согласен.
Comment 7 Дмитрий 2025-09-30 10:48:43 MSK
(Ответ для Сергей Жидких на комментарий #5)
> Пользователь не должен гадать, что означает ошибка 125 и какой сакральный
> смысл заложен автором в эту ошибку. Это создаёт очень некрасивую кривую
> обучения.
> Если ошибка является внутренней ошибкой apm, то должна быть более
> информативной. Если нет, то должна намекать на возможное решение проблемы.
> Условно:
> > Не удалось создать контейнер <...> (ошибка 125)
> > Убедитесь, что настроен rootless режим.
> А в документации должно быть строго прописаны ограничения при работе с
> distrobox.
> 
> Поэтому я не считаю, что проблема решена.

Согласен, в новой версии весь вывод отправляется в ошибку как его отдаёт distrobox без кода ответа, там подробно написаны причины возникновения ошибки.