Docker не может запустить nodejs npm - PullRequest
0 голосов
/ 11 сентября 2018

Когда я запускаю команды ниже в Dockerfile :

FROM ruby:2.3

RUN apt-get update

RUN apt-get install nodejs npm -y

RUN apt-get install vim -y

RUN apt-get install memcached -y

Я получаю ошибку ниже:

Отправка контекста сборки в демон Docker 29,74 МБ

Шаг 1/12: ОТ рубина: 2,3

---> 09c6ceeef3bc

Шаг 2/12: ЗАПУСК apt-get update

---> Использование кеша

---> c41c3235c3ba

Шаг 3/12: ЗАПУСК apt-get install nodejs npm -y

---> Запуск в b0d407900cbd

Чтение списков пакетов ...

Построение дерева зависимостей ...

Чтение информации о состоянии ...

** E: Невозможно найти пакет npm

Команда '/ bin / sh -c apt-get install nodejs npm -y' вернула ненулевой код: 100 **

Пожалуйста, предложите решение, заранее спасибо.

Ответы [ 3 ]

0 голосов
/ 11 сентября 2018

Сначала вам нужно будет установить nodesetup из https://deb.nodesource.com/setup_8.x добавьте код, как в вашем файле Docker, после RUN apt-get update.

RUN curl -sL https://deb.nodesource.com/setup_8.x | Баш -;

Примечание: вы создаете ненужные слои в Docker Image с оператором RUN, вы можете объединить эти операторы

0 голосов
/ 12 сентября 2018

да, я попытался выполнить шаги по установке nodejs с помощью команды curl, сборка образа Docker прошла успешно, большое спасибо за указание на это. но проблема в том, что у нас есть приложение rube, которое не работает с этим образом, Разработчики говорят, что приложенные ошибки происходят из-за неправильной установки узла.

см. Эту ссылку для журналов ошибок

https://drive.google.com/open?id=1gTa4ik0WxkQkiRs3ioflk7iYPj5oI1Bj

0 голосов
/ 11 сентября 2018

Образ Docker ruby:2.3 основан на Debian 9 Stretch, где более старый пакет nodejs, а не пакет npm.

Вы можете сделать это следующим образом:

RUN apt-get update; \
    apt-get install -y curl gnupg; \
    curl -sL https://deb.nodesource.com/setup_8.x | bash -; \
    apt-get install -y nodejs; \
    rm -rf /var/lib/apt/lists/*

Сначала он устанавливает curl, чтобы иметь возможность загрузить сценарий установки, и gnupg необходим для этого сценария установки.

Вы можете прочитать больше на официальном сайте nodejs: https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...