Alpine: Установка Пакетов

Минималистичный 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-хосте, удалив ненужные образы! Читать далее →