Установка npm в закрытом хранилище внутри докера не работает - PullRequest
0 голосов
/ 26 апреля 2019

Похоже, в linux подготовительный хук не вызывается при установке из частного git-репозитория.Я использую альпийский образ и пытаюсь собрать свой личный пакет в npm install, но готовить ловушку не вызывают.По крайней мере, если я зайду затем в папку node_modules, чтобы проверить, представлена ​​ли папка lib, ее здесь нет.

Это своего рода тестовый файл dockerfile, я знаю, что ключи ssh должны вводиться, по крайней мере, на промежуточном этапе, чтобы не пропускать их.Просто для тестов, я сделал это как есть.

FROM node:8-alpine

RUN apk --update add --no-cache openssh-client
RUN apk add git

# add credentials on build
RUN mkdir /root/.ssh/
COPY ./id_rsa /root/.ssh/
RUN chmod 400 /root/.ssh/id_rsa

# make sure your domain is accepted
RUN touch /root/.ssh/known_hosts
RUN ssh-keyscan bitbucket.org >> /root/.ssh/known_hosts

WORKDIR /app

COPY package.json .
#COPY package-lock.json .

RUN npm install

COPY index.js .

ENTRYPOINT [ "node", "index.js" ]

Часть кода является частной, поэтому я не могу поделиться им, но он успешно установлен под машиной Windows, и все последовательности и финалпакет работает нормально.В этом примере с докером это не так.

Я рассмотрел этот вопрос npm v6.4.1 не работает `prepare` внутри докера Но предложенное решение не сработало для меня, поэтомуможет быть, есть что-то еще.

Как включить подготовку крюка на альпийском образе на npm install?

...