Почему я не могу исправить проблемы, у вас поврежденные пакеты - PullRequest
0 голосов
/ 19 мая 2019

Попытка запустить Dockerfile, но при установке npm не получается.

ОШИБКА:

Unable to correct problems, you have held broken packages.
The command '/bin/sh -c apt-get install -y npm' returned a non-zero code: 100

Dockerfile:

FROM ubuntu:14.04

MAINTAINER Giacomo Vacca "giacomo.vacca@gmail.com"

ENV REFRESHED_AT 2015-01-19
ENV DEBIAN_FRONTEND noninteractive

RUN apt-get autoremove
RUN npm -v

RUN apt-get update
RUN apt-get upgrade -y

RUN apt-get install --yes curl
RUN curl --silent --location http://deb.nodesource.com/setup_0.10 | sudo bash -
RUN apt-get install -y nodejs
RUN apt-get install --yes build-essential

RUN rm /usr/bin/node

# needs this to find the nodejs exec
RUN ln -s /usr/bin/nodejs /usr/bin/node

RUN apt-get install -y npm  <--- FAIL
RUN /usr/bin/npm install socket.io@0.9.14

EXPOSE 8080

ENTRYPOINT ["/usr/bin/node", "/root/server.js"]

1 Ответ

1 голос
/ 19 мая 2019

Вам не нужно устанавливать npm из дистрибутива Ubuntu с помощью:

RUN apt-get install -y npm

потому что он уже установлен пакетом nodejs из nodeource. Вы можете проверить это с помощью:

dpkg -L nodejs | grep "/usr/bin/npm"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...