Ошибка SELF_SIGNED_CERT_IN_CHAIN ​​на эластичном бобовом стебле для NodeJS

Я хорошо знаю корень этой проблемы, поскольку npm написал в своем блоге: http://blog.npmjs.org/post/78085451721/npms-self-signed-certificate-is-no-more

Решение состоит в следующем:

1) обновите версию npm

npm install npm -g

или

2) сообщите текущую версию npm для использования известных регистраторов

npm config set ca ""

Однако ни одно из этих решений не работает на эластичном бобовом стебле. npm связан с установленной версией node (v0.10.10), и невозможно сообщить текущей версии npm для использования известных регистраторов.

Я запускаю 64-разрядный экземпляр Amazon Linux для NodeJS

Добавление этой команды в .ebextensions не помогает:

container_commands:
  01_npm-fix:
    command: /opt/elasticbeanstalk/node-install/node-v0.10.10-linux-x64/bin/npm config set ca ""

Кто-нибудь, как выяснил решение для этого?

Ответ 1

Итак, я понял способ заставить его работать:

Поместите это в .ebextensions:

commands:
  01_enable_rootaccess:
    command: echo Defaults:root \!requiretty >> /etc/sudoers
  02_no-cert:
    command: sudo /opt/elasticbeanstalk/node-install/node-v0.10.10-linux-x64/bin/npm config set ca ""

В моем случае он работал как прелесть.

Ответ 3

Сегодня такая же проблема. Я исправил его, установив свой глобальный файл npmrc следующим образом:

02_no-cert:
  command: "rm -rf /opt/elasticbeanstalk/node-install/node-v0.10.21-linux-x64/etc && mkdir /opt/elasticbeanstalk/node-install/node-v0.10.21-linux-x64/etc && echo 'ca = ' > /opt/elasticbeanstalk/node-install/node-v0.10.21-linux-x64/etc/npmrc"
  ignoreErrors: true

Ответ 4

К сожалению, для меня это не сработало. Amazon дал мне другую версию, которая тоже не сработала:

команды: 01-команда:   команда: '$ (find/opt/elasticbeanstalk/ node -install/*/bin | grep "npm $" | head -n1) config set ca ""'

Ответ 5

Это тоже не сработало для меня.

Что я нашел: в то время, когда выполняется блок "команд", папка node -install пуста. Я предполагаю, что это происходит из-за того, что команды запускаются до того, как node + npm полностью развернут в голый экземпляр.

Сегодня я попытаюсь проверить это предположение и дать дополнительную информацию.