Centos下Nodejs+npm環境-部署記錄

 

公司的一個項目上線,須要用到Nodejs和npm環境,這裏記錄下安裝過程,方便回看同時供你們參考。node

1)yum安裝方式(版本比較老點,v5.12.0 + 3.8.6)linux

須要在centos中添加epel和remi源

添加epel源(若是提早安裝了其餘的epel-release-7-11.noarch,則須要先卸載它,不然會和下面的衝突)
64位:
[root@node-test src]# rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
===========================================================================================
32位:
[root@node-test src]# rpm -ivh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
===========================================================================================

導入key:
[root@node-test src]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

添加remi源
[root@node-test src]# rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
[root@node-test src]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-remi

安裝完成後,執行
[root@node-test src]# curl --silent --location https://rpm.nodesource.com/setup_5.x | bash -
[root@node-test src]# yum -y install nodejs

[root@node-test src]# node -v
v5.12.0

[root@node-test src]# npm -v
3.8.6

nodejs環境如上就已經部署好了,此時就能夠執行*.js程序了。

2)tar包安裝(制定版本安裝,v8.1.0+5.0.3)c++

下載地址:https://nodejs.org/dist/
這裏下載v8.1.0

[root@node-test src]# wget https://nodejs.org/dist/v8.1.0/node-v8.1.0-linux-x86.tar.gz
[root@node-test src]# tar -zvxf node-v8.1.0-linux-x86.tar.gz
[root@node-test src]# mv node-v8.1.0-linux-x86 /usr/local/node-v8.1.0
[root@node-test src]# ls /usr/local/node-v8.1.0
bin  CHANGELOG.md  include  lib  LICENSE  README.md  share

接着經過下面兩個命令創建node和npm的軟鏈接,在較高級版本的nodejs中自帶了npm,因此這裏不須要另行下載。 
[root@node-test src]# ln -s /usr/local/node-v8.1.0/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm
[root@node-test src]# ln -s /usr/local/node-v8.1.0/bin/node /usr/local/bin/node

上面操做相似於將node和npm添加進系統環境變量,可是在後期安裝head插件過程當中出現報錯,問題是在Path路徑中找不到指定文件
爲此解決這個問題,直接再修改/etc/profile,添加node的目錄到Path便可,具體見下面這個 
[root@node-test src]# vim /etc/profile
......
export PATH=$PATH:/usr/local/node-v8.1.0/bin
[root@node-test src]# source /etc/profile

查看版本,檢查是否安裝成功
[root@node-test src]# node -v 
v8.1.0
[root@node-test src]# npm -v
5.0.3

====================可能出現的報錯====================
報錯1:
/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory

由於64位系統中安裝了32位程序。解決方法:
[root@node-test src]# yum install glibc.i686

報錯2:
node: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

解決辦法:
[root@node-test src]# yum whatprovides libstdc++.so.6
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.tuna.tsinghua.edu.cn
 * epel: mirrors.yun-idc.com
 * extras: ftp.sjtu.edu.cn
 * updates: ftp.sjtu.edu.cn
libstdc++-4.4.7-23.el6.i686 : GNU Standard C++ Library
Repo        : base
Matched from:
Other       : libstdc++.so.6

而後執行
[root@node-test src]# yum install libstdc++-4.4.7-23.el6.i686

==================解決npm install過慢問題==================
若是後期在使用npm install安裝過程當中出現了長時間停留在fetchMetadata sill 一直不動的現象,那應該是npm源出了問題。
這時候能夠切換到國內的npm源來解決這個問題,執行下面兩個命令便可(大概測試了下,速度提高了10-100倍之多)
[root@node-test src]# npm config set registry https://registry.npm.taobao.org 
[root@node-test src]# npm config get registry  
相關文章
相關標籤/搜索