Как установить npm в Alpine Linux

Как установить npm в Alpine Linux

Итак, я не могу установить npm в alpine linux. Я думал, что, возможно, я могу просто сделать a, apk add npmно, по-видимому, apk search npmничего не возвращает, даже после a apk update. Я экспериментирую со всем этим из образа docker nginx:alpine, т.е.docker run -it nginx:alpine /bin/sh

Редактировать 1: Я понимаю, какnodejs:альпийскийdockerfile собирается node, но я не понимаю, как он собираетсяnpm

Редактирование 2: теперь, когда я знаю, что npm устанавливается вместе с nodejs на Alpine, и просто для ясности, причина, по которой это не было очевидно для меня сначала, заключается в том, что на Ubuntu 14.04 a sudo apt-get install nodejsвсе равно потребуется sudo apt-get install npm(который устанавливает пакеты разработки, например gcc)

решение1

Для последних версий Alpine (v3.8+) правильный способ установки nodejs с помощью npm:

apk add --update nodejs npm

Однако npmпакет зависит от nodejs, поэтому вы можете сделать:

apk add --update npm

Примечание: начиная с Alpine 3.8 пакет nodejs-npm отсутствует.

решение2

У меня возникла проблема с менеджером APK.

Пакетnodejsбольше не устанавливает NPM (см.pkgs.alpinelinux.org) Вам необходимо установить nodejs-npm

apk add --update nodejs nodejs-npm

решение3

Я могу ошибаться, но мне кажется, npmчто это на самом деле зависимость nodejs.

Я никогда не видел, чтобы какой-либо пакетный менеджер устанавливался npmотдельно. Кажется, всегда идет в комплекте с yum install nodejs, или apt-get install nodejs, или apk add --update nodejs.

решение4

Проблема возникла недавно и связана с изменениями в репозиториях пакетов Alpine между версиями 3.5 и 3.6 или edge.

В v3.5 nodejsвключен npm. В v3.6 nodesjsnpm не включен, а новый nodejs-npmпакет существует.

Видетьздесьдля пакетов Alpine. Чтобы узнать, какую версию пакетов вы извлекаете, посмотрите содержимое/etc/apk/repositories

Связанный контент