Использование реестра Verdaccio с Skaffold

** edit - важная деталь: verdaccio также работает в докер-контейнере. Проблема, похоже, связана с сообщением между контейнером. У меня реестр npm установлен на localhost, но я думаю, что он пытается подключиться к localhost в контексте контейнера, а не к хосту контейнера.

Я пытаюсь установить пакет из реестра Verdaccio, работающего на localhost, и не знаю, как изменить конфигурацию skaffold или файл докеров, чтобы изменить реестр с npmjs на Verdaccio. Ошибка 404, которую я получаю, приведена ниже:

npm замечание npm ERR! код E404 npm ERR! 404 не найден - ПОЛУЧИТЕ https://registry.npmjs.org/@flashsparkmedia%2fcommon - Не найдено npm ERR! 404 нпм ERR! 404 '@ flashsparkmedia / common @ ^ 1.0.3' отсутствует в реестре npm. npm ERR! 404 Вы должны вывести автора из строя, чтобы опубликовать его (или используйте имя самостоятельно!) Npm ERR! 404 нпм ERR! 404 Обратите внимание, что вы также можете установить из npm ERR! 404 tarball, папка, URL-адрес http или URL-адрес git.

Вот мой файл dockerfile и skaffold.yaml для справки:

apiVersion: skaffold/v2beta4
kind: Config
deploy:
    kubectl:
        manifests:
            - ./infra/k8s/*
build:
    local:
        push: false
    artifacts:
        - image: flashsparkmedia/auth
          context: auth
          docker:
              dockerfile: Dockerfile
              network: host
          sync:
              manual:
                  - src: 'src/**/*.ts'
                    dest: .
        - image: flashsparkmedia/client
          context: client
          docker:
              dockerfile: Dockerfile
          sync:
              manual:
                  - src: '**/*.js'
                    dest: .

FROM node:alpine

WORKDIR /app
ARG NPM_TOKEN
COPY .npmrc .
COPY package.json .
RUN npm install --only-prod 
RUN rm -f .npmrc

COPY . .
CMD npm start

У меня также есть файл .npmrc в корневом каталоге, ссылающийся на localhost: 4873 с переменной _authToken


person Bradley Rumack    schedule 09.01.2021    source источник
comment
Интересно, что это может быть в документации Verdaccio, если вы считаете полезным для других: +1   -  person Juan Picado    schedule 10.01.2021


Ответы (1)


Решено. К моему изображению в массиве артефактов добавлено поле «сеть» в разделе «Докер» и убедитесь, что файл .npmrc был правильно скопирован в корневой каталог. Пример в вопросе отредактирован с исправлением.

person Bradley Rumack    schedule 10.01.2021