美文网首页服务器技术
在CentOS7中安装nodejs(npm)

在CentOS7中安装nodejs(npm)

作者: GoGooGooo | 来源:发表于2017-11-09 14:07 被阅读42次

    我当前使用的是Centos7

    首先在官网查看当前最新的版本

    https://nodejs.org/dist/

    移动到目录

    cd /usr/local/
    

    下载包

    wget https://nodejs.org/dist/v9.1.0/node-v9.1.0-linux-x64.tar.gz
    

    下载完成后解压

    tar zxvf node-v9.1.0-linux-x64.tar.gz
    

    重命名为node

    mv node-v9.1.0-linux-x64 node
    

    配置环境变量

    vim /etc/profile
    source /etc/profile
    

    在最后边添加

    #set for nodejs  
    export NODE_HOME=/usr/local/node  
    export PATH=$NODE_HOME/bin:$PATH  
    

    使用命令查看版本,出现相应版本号则表示成功

    node -v
    npm -v
    

    启动nodeJS项目
    cd到指定的nodejs项目目录中(package.json所在目录)
    npm install
    npm start

    npm2 安装

    (1)如果可以联网
    直接执行:npm install -g pm2
    (2)如果不能联网
    参考:http://blog.csdn.net/chenxiao_zhl/article/details/48180193
    首先,找一台可以在线安装pm2的机器
    执行 npm install pm2 -g 安装pm2
    执行 npm config get prefix, 看一下这台机器的npm默认全局安装目录在哪,然后去这个目录下面的 lib/node_modules/下就能看到你刚刚安装的pm2程序;例如如果显示 /usr/local/node, 则去 /usr/local/node/lib/node_modules/下面找到pm2

    执行tar czvf pm2.tar.gz pm2/ 命令, 把pm2打包,在这里打包的好处,是因为该目录下面已经包含了pm2依赖的所有node模块
    把打出来的包,通过内网传送到要部署的服务器上
    (3)报错处理
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
    npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.0.14: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
    还是自己来吧,最主要的原因还是在NPM上,因为用了n来管理nodejs的版本,npm依赖的是nodejs,而n管理node的版本时因为也要依赖node所以有时候会出现一些问题,去找了一下tj大神的n发布页面,上面提到在使用n来切换版本之后,需要修复一下node与npm之间的关系,否则npm很可能出现问题。即在使用完n切换版本之后,需要运行以下脚本,来修复npm
    $ curl -0 -L https://npmjs.org/install.sh | sudo sh
    视你终端的配置,取舍后面的sudo
    参考:https://segmentfault.com/q/1010000007163713
    https://github.com/tj/n
    登录部署服务器
    同样执行 npm config get prefix 看一下这台服务器的npm默认安装目录, 例如目录为 /usr/local/node
    执行命令 cd /usr/local/node/lib/node_modules/
    拷贝你的 pm2.tar.gz 到该目录下
    tar xvf pm2.tar.gz
    到这一步,你已经可以使用 /usr/local/node/lib/node_modules/pm2/bin/pm2 执行pm2的命令了, 下面就是把这个命令加到系统环境中
    cd /usr/bin
    ln -s /usr/local/node/lib/node_modules/pm2/bin/pm2 pm2
    这样,就可以直接使用pm2命令来各种操作了

    相关文章

      网友评论

        本文标题:在CentOS7中安装nodejs(npm)

        本文链接:https://www.haomeiwen.com/subject/pnipmxtx.html