Минималистичный Docker-образ на базе Alpine Linux имеет размер всего 5 МБ, но многие обычные для Linux утилиты в нем, по умолчанию, не установлены.
В этой небольшой заметке я покажу, как из командной строки установить пакет в Alpine-контейнере с помощью apk
(менеджера пакетов Alpine).
Я также покажу, как создать Docker-образ на базе Alpine с дополнительно установленными программами.
Дельный Совет: Как войти в Docker-контейнер и запустить bash
! Читать Далее →
Установка Пакетов в Alpine
Обновите индексы Alpine-репозитория:
# apk update
В случае следующих ошибок подключитесь к Docker-контейнеру как root
:
ERROR: Unable to lock database: Permission denied
ERROR: Failed to open apk database: Permission denied
Найдите пакет, который необходимо установить в Alpine:
# apk search <package> - или - # apk search -a <package>
Оция | Описание |
---|---|
-a , --all |
Показывать все версии пакетов, а не только последние |
Установить пакет в Alpine Linux из командной строки:
# apk add <package> - пример - # apk add curl
Также пакет в Alpine может быть установлен с использованием опции --no-cache
:
# apk --no-cache add <package>
Alpine Linux 3.3 и выше: Опция --no-cache
была добавлена в Alpine Linux 3.3. Она позволяет устанавливать пакеты с обновленным индексом «на лету», т.е. без локального кэша.
Чтобы установить пакет в Docker-образе на базе Alpine, добавьте следующую строку в Dockerfile
:
RUN apk --no-cache add <package>
В более ранних версиях Alpine, пакет может быть установлена следующим образом:
RUN apk add --update <package> && \ rm -rf /var/cache/apk/*
Дельный Совет: Узнайте как освободить место на Docker-хосте, удалив ненужные образы! Читать далее →
Nop, permission denied, when running /etc/apk/repositories, and I can enter in graphical, I’m giving up on alpine, can even install, wors than arch, and the wiki its a mess, fork everywhere who takes you nowhere.