В докере Alpine linux спроектирован как минимальное базовое изображение, чтобы сохранить небольшой размер изображения и уменьшить его поверхность атаки. Дополнительное программное обеспечение, такое как nodejs
(которое содержит npm
), требует ручной установки с использованием соответствующих пакетов apk , таких как apk add nodejs
. Возможно, необходимо сначала обновить пакеты, используя apk update
.
способ стыковки
Вы легко можете написать Dockerfile
и добавить это как RUN
операторы. Но предпочтительным способом является поиск в док-хабе уже существующих изображений, которые соответствуют вашим потребностям. В случае npm вы найдете официальное изображение nodejs , где вы просто используете тег вашей целевой версии nodejs, например 10-*
, для последних lts.
Здесь вы можете выбирать различные базовые изображения. Например, вы можете использовать 10-jessie
или что хотите: 10-alpine
. У этого есть только 24 МБ, где 10-stretch
потребует 346 МБ памяти.
Чтобы использовать его, измените image: alpine:3.9.2
на image: node: 10-alpine
в вашем файле docker-compose.yml
.