microdnf README

The project's README from github.com/rpm-software-management/microdnf. As one markdown file: README.md.

microdnf

A minimal dnf for (mostly) Docker containers that uses libdnf and hence doesn't require Python.

This project was inspired by and derived from https://github.com/cgwalters/micro-yuminst

Reporting issues

Contribution

Here's the most direct way to get your work merged into the project.

  1. Fork the project

  2. Clone down your fork

  3. Implement your feature or bug fix and commit changes

  4. If the change fixes a bug at Red Hat bugzilla, or if it is important to the end user, add the following block to the commit message:

    = changelog =
    msg:           message to be included in the changelog
    type:          one of: bugfix/enhancement/security (this field is required when message is present)
    resolves:      URLs to bugs or issues resolved by this commit (can be specified multiple times)
    related:       URLs to any related bugs or issues (can be specified multiple times)
    
    • For example::

      = changelog =
      msg: Don't print lines with (null) in transaction report
      type: bugfix
      resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1691353
      
    • For your convenience, you can also use git commit template by running the following command in the top-level directory of this project:

      git config commit.template ./.git-commit-template
      
  5. Push the branch to your fork

  6. Send a pull request for your branch

microdnf (rpm-software-management/microdnf)

Searching Database…

Что это такое?microdnf — это минималистичная и лёгкая реализация dnf (пакетного менеджера RPM, используемого в Fedora и RHEL), написанная на C и рассчитанная в первую очередь на Docker-контейнеры.
Так это отдельный инструмент или часть самого dnf?Это самостоятельный бинарник на C, а не плагин dnf: вы вызываете microdnf напрямую, и он работает поверх libdnf — той же библиотеки, на которой построен полноценный dnf.
Как добавить его в образ контейнера?Установите пакет microdnf в образ на базе Fedora/RHEL (dnf install microdnf), затем вызывайте microdnf вместо dnf в своём Dockerfile, чтобы устанавливать RPM-пакеты и управлять ими.
Нужен ли Python в образе, чтобы он работал?Нет — в этом его главная фишка: он использует libdnf и обходится без среды Python, от которой зависит dnf, поэтому компактные образы контейнеров остаются небольшими.
Там есть все возможности обычного dnf?Нет, это намеренно минимальный dnf; в README не указано, какие команды и плагины поддерживаются, так что рассчитывайте на базовые операции с пакетами, а не на полное соответствие возможностям dnf.
Это только для контейнеров или подойдёт и для обычной Fedora на моём компьютере?Он ориентирован в первую очередь на Docker-контейнеры. На обычной системе с Fedora или RHEL вы, как правило, будете просто использовать dnf; microdnf нужен там, где при сборке образов важен размер.
Size
0.2 MB
Stars
251
Age
10y
Commits · 90 Days