모듈을 설치하는 동안 "레지스트리에서 가져오지 못했습니다."
npm부터 노드 모듈을 설치할 수 없습니다.
npm install socket.io
위의 명령으로 인해 출력이 부족하여 소켓을 설치할 수 없습니다.이오
npm http GET https://registry.npmjs.org/socket.io
npm ERR! Error: failed to fetch from registry: socket.io
npm ERR! at /opt/node0610/lib/node_modules/npm/lib/utils/npm-registry-client/get.js:139:12
npm ERR! at cb (/opt/node0610/lib/node_modules/npm/lib/utils/npm-registry-client/request.js:32:9)
npm ERR! at Request._callback (/opt/node0610/lib/node_modules/npm/lib/utils/npm-registry-client/request.js:137:18)
npm ERR! at Request.callback (/opt/node0610/lib/node_modules/npm/node_modules/request/main.js:109:22)
npm ERR! at Request.<anonymous> (/opt/node0610/lib/node_modules/npm/node_modules/request/main.js:198:58)
npm ERR! at Request.emit (events.js:88:20)
npm ERR! at ClientRequest.<anonymous> (/opt/node0610/lib/node_modules/npm/node_modules/request/main.js:195:10)
npm ERR! at ClientRequest.emit (events.js:67:17)
npm ERR! at CleartextStream.<anonymous> (http.js:1134:11)
npm ERR! at CleartextStream.emit (events.js:67:17)
npm ERR! You may report this log at:
npm ERR! <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR! <npm-@googlegroups.com>
npm ERR!
npm ERR! System Linux 2.6.18-194.el5
npm ERR! command "node" "/opt/node0610/bin/npm" "install" "socket.io"
npm ERR! cwd /opt/node0610/lib/node_modules
npm ERR! node -v v0.6.10
npm ERR! npm -v 1.1.0-3
npm ERR! message failed to fetch from registry: socket.io
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /opt/node0610/lib/node_modules/npm-debug.log
npm not ok
내 NPM 버전:
[applmgr@dev node_modules]$ npm --version
1.1.0-3
내 노드 JS 버전:
[applmgr@dev node_modules]$ node --version
v0.6.10
나는 이 문제를 가지고 있었습니다.npm v1.1.4
)node v0.6.12
), 는 에 Ubuntu 12.04
저장소 버전.
의 그 버전처럼 보입니다.npm
더 이상 지원되지 않습니다. 노드를 업데이트하고 npm을 사용하여 문제를 해결했습니다.
먼저 오래된 버전을 제거합니다(선택 사항이지만 글로벌 모듈 경로가 지정되지 않은 문제가 해결된 것 같습니다).
sudo apt-get purge nodejs npm
그런 다음 노드 소스의 repo 및 설치를 활성화합니다.
curl -sL https://deb.nodesource.com/setup | sudo bash -
sudo apt-get install -y nodejs
참고 - 이전의 조언은 Chris Lea의 레포를 사용하는 것이었습니다. Chris Lea는 이제 이 레포를 노드 소스로 마이그레이션했습니다. 다음을 참조하십시오.
- https://chrislea.com/2014/07/09/joining-forces-nodesource/
- https://nodesource.com/blog/chris-lea-joins-forces-with-nodesource
보낸 사람: 여기
https://github.com/isaacs/npm/issues/2119
아래 명령을 실행해야 했습니다.
npm config set registry http://registry.npmjs.org/
하지만, 그것은 만들 것입니다.npm
안전하지 않은 HTTP 연결을 통해 패키지를 설치합니다. 여러분은 수 있 다 계 속 해 야 합 니 다 은 당 면 신 합 니 할 다 ▁with 해 ▁if 야 ▁stick ▁should ▁you , ▁you ▁can
npm config set registry https://registry.npmjs.org/
대신 HTTPS를 통해 설치합니다.
Ubuntu에 있습니다.apt-get을 사용하여 노드를 설치했습니다.Npm은 해당 패키지에 포함되지 않아 별도로 설치해야 했습니다.나는 그것이 효과가 있을 것이라고 생각했지만, 분명히 우분투 배포판의 npm 버전은 구식이었습니다.
노드 Wiki의 지침은 다음과 같습니다.
최신 버전의 노드를 얻거나 이전 Ubuntu 및 기타 App 기반 배포판에 설치하려면 몇 가지 추가 단계가 필요할 수 있습니다.설치 예:
sudo apt-get update
sudo apt-get install -y python-software-properties python g++ make
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs
그 이후로 npm은 이미 포함되어 완벽하게 작동했습니다.
저는 보통 대리인 문제이기 때문에 모든 것을 시도합니다.
npm config set registry http://registry.npmjs.org/
npm config set strict-ssl false
npm config set proxy http://myusername:mypassword@proxy.us.somecompany:8080
npm config set https-proxy http://myusername:mypassword@proxy.us.somecompany:8080
set HTTPS_PROXY=http://myusername:mypassword@proxy.us.somecompany:8080
set HTTP_PROXY=http://myusername:mypassword@proxy.us.somecompany:8080
export HTTPS_PROXY=http://myusername:mypassword@proxy.us.somecompany:8080
export HTTP_PROXY=http://myusername:mypassword@proxy.us.somecompany:8080
export http_proxy=http://myusername:mypassword@proxy.us.somecompany:8080
npm --proxy http://myusername:mypassword@proxy.us.somecompany:8080 \
--without-ssl --insecure -g install
add-apt-repository가 작동하려면 공통 소프트웨어 속성을 설치해야 합니다. 그러면
sudo apt-get purge nodejs npm
sudo apt-get install -y python-software-properties python g++ make software-properties-common
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs
무작위 npm 설치 오류(같은 환경에서 오류가 발생하는 패키지가 다른 경우)와 함께 작동한 한 가지 방법은 다음과 같습니다.
npm cache clean
그리고 그 과정을 반복합니다.그러면 프로세스가 더 원활하게 진행되고 실제 문제와 오류 메시지가 나타나 수정한 후 진행할 수 있습니다.
이는 도커 인스턴스 내에서 Ubuntu 설치가 거의 없는 상태에서 전체 패키지의 npm 설치를 실행한 경험을 바탕으로 합니다.Ubuntu에서 빌드/메이크 도구가 누락된 경우가 있으며 어떤 이유로 캐시를 청소하기 전까지는 npm 오류가 발생하지 않습니다.
이 문제는 https 프로토콜로 인해 발생하며, 이로 인해 다른 솔루션이 작동합니다(비보안 프로토콜로 전환).
나에게 가장 좋은 해결책은 npm을 포함한 노드의 최신 버전을 컴파일하는 것이었습니다.
apt-get purge nodejs npm
git clone https://github.com/nodejs/node ~/local/node
cd ~/local/node
./configure
make
make install
이제 Joyent(기본 노드 jsbacker)의 공식 지침이 있습니다.Ubuntu의 경우:
sudo apt-get purge nodejs npm
curl -sL https://deb.nodesource.com/setup | sudo bash -
sudo apt-get install -y nodejs
다른 유닉스 배포는 osx 및 windows 링크를 참조하십시오.노드와 npm이 모두 설치됩니다.
Ubuntu Fork인 Elementary OS Luna에서 제게 유일하게 도움이 되었습니다.저는 x86 아키텍처에 종사하고 있습니다.나는 여기서 모든 답을 시도했지만 결국 소스에서 설치하기로 결정했습니다.
먼저 패키지 관리자를 사용하여 설치되지 않았는지 확인합니다.
sudo apt-get purge nodejs npm -y
저는 다운로드 페이지에 가서 최신 소스를 찾아 http://nodejs.org/download/ 을 다운로드했습니다.curl, wget 또는 브라우저를 사용하여 얻을 수 있습니다.
wget http://nodejs.org/dist/v0.10.34/node-v0.10.34.tar.gz
tar -xvf node-v0.10.34.tar.gz
cd node-v0.10.34
./configure
make
sudo make install
제작에 시간이 좀 걸릴 수 있습니다.완료되면 노드와 npm이 설치되어 이미 경로에 있어야 하는 /usr/local/bin 디렉토리에서 작업해야 합니다.위치를 확인해야 합니다.
which npm node
또한 사용 권한을 변경해야 작동할 수 있습니다.
sudo chown -R $USER /usr/local
작동하지 않는 경우 경로를 확인합니다.
echo $PATH
이러한 방식으로 설치하면 apt-get 패키지 관리자가 관리하지 않습니다.건배!
최근에 node.js(그리고 필연적으로 npm)를 최신 버전으로 업그레이드한 후 이 문제가 발생했습니다.
> npm --version < 2.0.0-alpha-5
참고: 불안정한 버전을 요청한 것이 아니라, 단지 다음에 받았습니다.brew install npm
OSX 버전.
npm 다운그레이드로 문제가 해결되었습니다.
하는 가장 은 안정인적 npm을치가장입니다.npm install -g npm
그러나 일부 상황에서는 작동하지 않을 수 있으며, 이때 node.js의 다운그레이드가 필요할 수 있습니다.
Kudos to github user: midnight codr 나에게 아래 방법이 효과가 있었습니다.
이미 설치된 nodejs/npm 패키지를 제거해야 합니다.
sudo apt-get purge nodejs
sudo apt-get purge npm
이제 아래 명령을 사용하여 노드 j를 설치합니다(midnight codrongithub 덕분).
curl -L https://raw.github.com/midnightcodr/rpi_node_install/master/setup.sh | bash -s 0.10.24
nodejs가 아닌 명령 노드로 노드를 호출할 수 있습니다.
노드가 설치되면 npm을 설치합니다.
sudo apt-get install npm
그때 npm 레지스트리가 다운되었거나 연결이 끊겼을 수 있습니다.
어느 쪽이든 노드와 npm을 업그레이드해야 합니다.
노드 환경을 관리하려면 nave를 사용하는 것이 좋습니다.
https://npmjs.org/package/nave
버전을 쉽게 설치하고 버전 사이를 빠르게 이동할 수 있습니다.
라즈베리 파이를 위해 나는 내가 찾은 해결책을 찾고 수정했습니다.
여기 제가 실행한 것이 있습니다.
sudo su -
cd /opt
wget http://nodejs.org/dist/v0.10.28/node-v0.10.28-linux-arm-pi.tar.gz
tar xvzf node-v0.10.28-linux-arm-pi.tar.gz
ln -s node-v0.10.28-linux-arm-pi node
chmod a+rw /opt/node/lib/node_modules
chmod a+rw /opt/node/bin
echo 'PATH=$PATH:/opt/node/bin' > /etc/profile.d/node.sh
내가 한 유일한 모드는 당시 최신 리눅스 암파이였던 모든 10.25를 10.28로 변경한 것입니다.
@여기서 답이 가장 좋습니다.그러나 노드 버전은 계속해서 이전 버전으로 이동하고 있으며, io.js의 재합병으로 인해 버전 관리가 복잡해졌습니다.그의 답변의 단계에 따라 노드 버전이 표시됩니다.0.10.25
최신 버전이 아닙니다.
기존 노드/npm 패키지는 다음을 사용하여 제거해야 합니다.
sudo apt-get purge nodejs npm
그런 다음 https://github.com/nodesource/distributions#debinstall 의 nodesource deb 설치 페이지를 확인합니다.
모든 Node.js 버전은 설치하기 위한 Linux 명령과 함께 위 페이지에 나열되어 있습니다.그리고 이 패키지들은 데비안과 우분투 모두에서 작동할 것입니다.
추신: Ubuntu Precision 또는 Debian Wheezy에서 Node v4.4 이상을 실행하려면 이전 디스트리뷰터에서 실행하는 것에 대한 정보를 검토해야 합니다.
추신: apt-get에 실패하면 스크립트가 완료되지 않습니다(Google 참조가 실패했습니다).apt-get update
키링에 추가되는 NodeSource 서명 키에 대한 메시지와 다음을 지시하는 최종 메시지가 표시됩니다.Run 'apt-get install nodejs' to install Node.js
.
P.P.P.S. npm은 노드와 함께 설치됩니다.설치가 완료되면 최신 npm으로 업데이트할 수 있습니다.sudo npm install npm -g
https 트래픽에 대해 mitm을 사용하는 보안 시스템을 구현하는 회사 네트워크에서 이 문제가 발생한 사용자의 경우, 회사 인증서를 사용하도록 npm을 구성할 수 있습니다.
npm config set cafile 'path/to/certif-file'
https://docs.npmjs.com/cli/v9/using-npm/config#cafile 을 참조하십시오.
하지만 다음과 같은 구성은 사용하지 않습니다.strict-ssl=false
또는 레지스트리 설정http://
이것은 안전한 작업 방식이 아닙니다.
언급URL : https://stackoverflow.com/questions/12913141/message-failed-to-fetch-from-registry-while-trying-to-install-any-module
'programing' 카테고리의 다른 글
GitHub API에서 기본 인증을 위해 사용자 이름 및 암호와 함께 Invoke-WebRequest 사용 (0) | 2023.05.13 |
---|---|
linq를 사용하여 목록에서 중복 제거 (0) | 2023.05.13 |
보안 웹 서비스에도 액세스하는 iOS 앱에서 Facebook 인증을 위한 설계 (0) | 2023.05.13 |
특정 길이의 하위 목록을 인쇄하려면 어떻게 해야 합니까? (0) | 2023.05.13 |
Node.js / Express.js - app.router는 어떻게 작동합니까? (0) | 2023.05.13 |