Как я устанавливаю последний узел в контейнере человечности 15.10 докера? apt-get install nodejs
версия 0.1 установок и никакой npm
Спасибо
Хорошо получил его,
# update
apt-get update
# install curl
apt-get install curl
# get install script and pass it to execute:
curl -sL https://deb.nodesource.com/setup_4.x | bash
# and install node
apt-get install nodejs
# confirm that it was successful
node -v
# npm installs automatically
npm -v
использование curl -sL https://deb.nodesource.com/setup_5.x | bash
для узла 5.x
Можно добавить одну строку к Dockerfile.
FROM node:8.2
существует список поддерживаемых имен тега здесь: https://hub.docker.com/_/node /
Обновленное решение с Jan 2019:
FROM ubuntu:latest
USER root
WORKDIR /home/app
COPY ./package.json /home/app/package.json
RUN apt-get update
RUN apt-get -y install curl gnupg
RUN curl -sL https://deb.nodesource.com/setup_11.x | bash -
RUN apt-get -y install nodejs
RUN npm install
Я использую следующий Dockerfile для установки версии узла 8.10.0.
Здесь, я использовал NVM (менеджер по Версии узла) , таким образом, мы можем выбрать, какая версия узла должна быть установлена на том контейнере. Используйте полный путь npm при установке модулей узла (например:/root/.nvm/versions/node/v$ {NODE_VERSION}/bin/npm устанавливают leasot@latest-g)
FROM ubuntu:18.04
ENV NODE_VERSION=8.10.0
RUN apt-get update && \
apt-get install wget curl ca-certificates rsync -y
RUN wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
ENV NVM_DIR=/root/.nvm
RUN . "$NVM_DIR/nvm.sh" && nvm install ${NODE_VERSION}
RUN . "$NVM_DIR/nvm.sh" && nvm use v${NODE_VERSION}
RUN . "$NVM_DIR/nvm.sh" && nvm alias default v${NODE_VERSION}
RUN cp /root/.nvm/versions/node/v${NODE_VERSION}/bin/node /usr/bin/
RUN cp /root/.nvm/versions/node/v${NODE_VERSION}/bin/npm /usr/bin/
RUN /root/.nvm/versions/node/v${NODE_VERSION}/bin/npm install leasot@latest -g
Примечание: Это - обрезанный Dockerfile.
Это - то, как я устанавливал nodeJS в контейнер. В моем случае я использую nginx базовое изображение.
Используйте следующую команду
apt-get update -yq \
&& apt-get install curl gnupg -yq \
&& curl -sL https://deb.nodesource.com/setup_8.x | bash \
&& apt-get install nodejs -yq
GNUPG необходим nodeJS установщику. Без него Вы получите следующее сообщение об ошибке;
[91mE: gnupg, gnupg2 and gnupg1 do not seem to be installed, but one of them is required for this operation
установка nodejs v8 с базовым изображением человечности 16.04:
FROM ubuntu:16.04
WORKDIR /app
RUN echo "LC_ALL=en_US.UTF-8" >> /etc/environment
RUN echo "LANG=en_US.UTF-8" >> /etc/environment
RUN echo "NODE_ENV=development" >> /etc/environment
RUN more "/etc/environment"
#RUN locale-gen en_US en_US.UTF-8
#RUN dpkg-reconfigure locales
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get dist-upgrade -y
RUN apt-get install curl htop git zip nano ncdu build-essential chrpath libssl-dev libxft-dev pkg-config glib2.0-dev libexpat1-dev gobject-introspection python-gi-dev apt-transport-https libgirepository1.0-dev libtiff5-dev libjpeg-turbo8-dev libgsf-1-dev fail2ban nginx -y
# Install Node.js
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash
RUN apt-get install --yes nodejs
RUN node -v
RUN npm -v
RUN npm i -g nodemon
RUN nodemon -v
# Cleanup
RUN apt-get update && apt-get upgrade -y && apt-get autoremove -y
Я также установил некоторые дополнительные зависимости, в которых я нуждаюсь так, можно очистить этот код для потребностей. Но это устанавливает nodejs и npm и nodemon.
Вот мой Dockerfile для этого:
FROM ubuntu:20.04
RUN apt update
# We directly answer the questions asked using the printf statement
RUN printf 'y\n1\n\1n' | apt install nodejs
RUN apt install -y npm
Здесь мы делаем нашу сборку докера:
docker build -t mynpm .
Вот проверка версии, чтобы убедиться в ее успешности:
docker run -it mynpm npm -v
Результат, который я получаю в результате: 6.14.4