apk
Пакеты apk для Alpine
Загрузите .apk в ветку Alpine. APKINDEX пересоберётся и подпишется RSA-ключом репозитория, поэтому apk add работает без --allow-untrusted.
- Клиент
- apk
- Дистрибутивы
- Alpine Linux
- Подпись
- Список пакетов и сами пакеты
- Пример адреса
- https://getpkg.ru/acme/tools/alpine/edge/main
Три шага
Команды показаны для демонстрационного репозитория acme/tools. В личном кабинете они подставляются для вашего.
1 Загрузите пакет
pcloud push acme/tools/alpine/edge ./hello-1.0.0-r0.apk --wait2 Подключите репозиторий
/etc/apk/repositorieswget -P /etc/apk/keys https://getpkg.ru/acme/tools/keys/acme-tools-5243ef4b.rsa.pub # the branch comes from /etc/alpine-release; on edge write edge instead echo "https://getpkg.ru/acme/tools/alpine/v$(cut -d. -f1,2 /etc/alpine-release)/main" >> /etc/apk/repositories apk updateИли подключите одной командой:
wget -qO- https://getpkg.ru/pcloud/stable/install.sh | sh3 Установите
apk add hello=1.0.0-r0
Подпись
APKINDEX и пакеты подписываются RSA-ключом репозитория. apk ищет ключ в /etc/apk/keys по имени файла, поэтому ключ сохраняется под опубликованным именем. install.sh делает это сам.
Вопросы
Как указать ветку Alpine?
Команда подключения берёт ветку из /etc/alpine-release, так что одна строка подходит для любой версии. На edge впишите edge вручную.
Когда всё же нужен --allow-untrusted?
Только если подпись в репозитории выключена или пакет подписан чужим ключом, которого нет на машине.
Нужно ли загружать пакет под каждую архитектуру?
Да, как и в самом Alpine: apk добавляет к адресу свою архитектуру и берёт файл из этого каталога.
Другие форматы
- debaptПакеты deb для aptДля Debian, Ubuntu и Linux Mint. Список пакетов подписан, пакеты разложены по релизам, ключ подключается через signed-by.Подробнее
- rpmdnf · yumПакеты rpm для dnf и yumДля Enterprise Linux и Fedora. Подписаны и метаданные, и сами пакеты, поэтому проверку подписи (gpgcheck) отключать не нужно.Подробнее
Начните с бесплатного репозитория
Регистрация займёт минуту, а первый пакет загружается одной командой.