首页 文章

如何在Amazon Linux上安装Node.JS

提问于
浏览
214

我已经看过使用yum安装依赖项的编写,然后从源代码安装Node.JS和NPM . 虽然这确实有效,但我觉得Node.JS和NPM都应该在某个公共回购中 .

如何在AWS Amazon Linux上的一个命令中安装Node.JS和NPM?

13 回答

  • 1

    偶然发现,以后很难再找到 . 放在这里为后人:

    sudo yum install nodejs npm --enablerepo=epel
    

    EDIT 3: 截至2016年7月, EDIT 1 不再适用于nodejs 4(且 EDIT 2 也不适用) . 这个答案(https://stackoverflow.com/a/35165401/78935)给出了一个真正的单行 .

    EDIT 1: 如果您正在寻找nodejs 4,请尝试EPEL测试回购:

    sudo yum install nodejs --enablerepo=epel-testing
    

    EDIT 2: 要使用上面的命令从通过EPEL repo安装的nodejs 0.12升级到EPEL测试仓库中的nodejs 4,请按照以下步骤操作:

    sudo yum rm nodejs
    sudo rm -f /usr/local/bin/node
    sudo yum install nodejs --enablerepo=epel-testing
    

    较新的包将节点二进制文件放在 /usr/bin 中,而不是 /usr/local/bin .

    还有一些背景:

    选项 --enablerepo=epel 使 yum 搜索EPEL存储库中的包 .

    EPEL(企业Linux的额外软件包)是Fedora团队的开源和免费社区存储库项目,为Linux发行版提供100%高质量的附加软件包,包括RHEL(红帽企业Linux),CentOS和Scientific Linux . Epel项目不是RHEL / Cent OS的一部分,但它是通过提供大量开源软件包(如网络,系统管理,编程,监控等)而为主要Linux发行版设计的 . 大多数的epel软件包都是由Fedora repo维护的 . 通过http://www.tecmint.com/how-to-enable-epel-repository-for-rhel-centos-6-5/

  • 382

    和其他人一样,接受的答案也给了我一个过时的版本 .

    这是另一种方法,它非常有效:

    $ curl --silent --location https://rpm.nodesource.com/setup_10.x | bash -
    $ yum -y install nodejs
    

    您也可以将10.x替换为其他版本,例如8.x等 .

    您可以在NodeSource Github page上查看所有可用版本,如果需要,也可以从那里拉出来 .

  • 164

    接受的答案给了我节点0.10.36和npm 1.3.6,它们已经过时了 . 我从nodejs下载页面抓取了最新的linux-x64 tarball,安装起来并不困难:https://nodejs.org/dist/latest/ .

    # start in a directory where you like to install things for the current user
    (For noobs : it downloads node package as node.tgz file in your directlry)
    curl (paste the link to the one you want from the downloads page) >node.tgz
    

    现在upzip你刚下载的tar -

    tar xzf node.tgz
    

    运行此命令,然后将其添加到 .bashrc

    export PATH="$PATH:(your install dir)/(node dir)/bin"
    

    (例如:export PATH =“$ PATH:/home/ec2-user/mydirectory/node/node4.5.0-linux-x64/bin”)

    并更新 npm (仅一次,不要添加到 .bashrc ):

    npm install -g npm
    

    注意 -g 那里意味着全局,实际上意味着全局到那个npm实例,它是我们刚刚安装的实例并且仅限于当前用户 . 这将适用于npm安装'globally'的所有软件包 .

  • 26

    对我有用的程序(遵循带有一些更新的these相当旧的说明):

    • 检查git已安装 git --version 或通过以下方式安装:
      sudo yum install git

    • 安装gcc和openssl:
      sudo yum install gcc-c++ make
      sudo yum install openssl-devel

    • 将git repo克隆到名为 node 的目录中(稍后可以删除):
      git clone https://github.com/nodejs/node.git

    • https://github.com/nodejs/node/releases决定您想要的节点版本

    • 转到刚刚创建的节点目录并安装节点
      cd node
      git checkout v6.1.0 - 在 v 之后放置您想要的版本
      ./configure
      make
      sudo make install

    • 测试该节点已安装/使用 node --version 或只是 node (退出节点通过 process.exit()^C x 2或 ^C exit

    • 检查npm版本: npm --version 并在必要时通过 sudo npm install -g npm 进行更新

    • 可选:使用 rm -r node 删除 node 目录


    笔记:

    • 由于 sudo yum install nodejs --enablerepo=epel-testing 返回错误,所接受的答案无效: No package nodejs available.
      ...和 sudo yum install nodejs --enablerepo=epel (即没有 -testing )只提供了非常旧的版本 .

    • 如果您已经安装了旧版本的节点,则可以使用以下命令将其删除:
      sudo npm uninstall npm -g ...因为npm可以卸载自己
      sudo yum erase nodejs
      sudo rm -f /usr/local/bin/node
      sudo yum rm nodejs 在接受的答案中将无效,因为 rm 不是有效的yum命令,请参阅 yum --help

    • 可以通过 git clone git://github.com/nodejs/node.git 克隆节点repo而不是 git clone https://github.com/nodejs/node.git 但是您可能会遇到各种错误(请参阅here) .

    • 如果您之前的安装已经有 /node 目录,请在使用git clone命令之前将其删除(否则会发生冲突):
      rm -r node

    • 如果您有任何 sudo npm... 命令的麻烦 - 像 sudo: npm: command not found 和/或有没有sudo,编辑安装节点包 sudo nano /etc/sudoers 并添加 :/usr/local/bin 到行 Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin 以便读取结束权限问题 Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin

  • 0

    使用NVM进行简单安装......

    curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh | bash
    nvm install node
    
  • 18

    对于v4 LTS版本,请使用:

    curl --silent --location https://rpm.nodesource.com/setup_4.x | bash -
    yum -y install nodejs
    

    对于Node.js v6使用:

    curl --silent --location https://rpm.nodesource.com/setup_6.x | bash -
    yum -y install nodejs
    

    尝试在Amazon Linux上安装本机插件时,我也遇到了一些问题 . 我想你这样做你还应该安装构建工具:

    yum install gcc-c++ make
    
  • 3

    我刚刚遇到过这个 . 我尝试了一些比较流行的答案,但最后,对我有用亚马逊的快速设置指南 .

    Tutorial: Setting Up Node.js on an Amazon EC2 Instance

    本教程的要点是:

    • 确保您正在查看实例 .

    • grab nvm: curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.0/install.sh | bash

    • 有效 . ~/.nvm/nvm.sh

    • 使用nvm安装节点 nvm install 4.4.5 (注意:您可以选择其他版本 . 请先运行 $ nvm ls-remote 查看远程版本)

    • 最后,通过运行 $ node -e "console.log('Running Node.js' + process.version)" 测试您是否正确安装了节点Node

    希望这有助于下一个人 .

  • 18

    我安装了Node.js 6.x并想安装Node.js 8.x.

    这是我使用的命令(取自Nodejs's site,有一些额外的步骤来处理yum缓存数据):

    • sudo yum remove nodejs :卸载Node.js 6.x(我不知道是否有必要)

    • curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -

    • sudo yum clean all

    • sudo yum makecache :重新生成元数据缓存(这不在文档中,但是yum继续尝试安装Node.jx 6.x,但未成功,直到我发出最后两个命令)

    • sudo yum install nodejs :安装Node.js 8.x.

  • 4

    sudo yum install nodejs npm --enablerepo=epel 适用于 Amazon Linux AMI . curl --silent --location https://rpm.nodesource.com/setup_6.x | bash - yum -y install nodejs 适用于RedHat .

  • 12

    最简单的解决方案是(以root身份执行)

    sudo su root
    cd /etc
    mkdir node
    yum install wget
    wget https://nodejs.org/dist/v9.0.0/node-v9.0.0-linux-x64.tar.gz
    tar -xvf node-v9.0.0-linux-x64.tar.gz
    cd node-v9.0.0-linux-x64/bin
    ./node -v
    ln -s /etc/node-v9.0.0-linux-x64/bin/node node
    

    enter image description here

  • 61

    https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions

    curl --silent --location https://rpm.nodesource.com/setup_10.x | sudo bash - sudo yum -y install nodejs

  • 1

    如官方文档中所述,简单的2步骤 -

    curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
    sudo apt-get install -y nodejs
    
  • 0

    对于那些希望在没有进一步搜索的情况下在Ansible中运行接受的答案的人,我在此处发布任务以方便和将来参考 .

    接受的答案建议:https://stackoverflow.com/a/35165401/78935

    Ansible任务相当于

    tasks:
      - name: Setting up the NodeJS yum repository
        shell: curl --silent --location https://rpm.nodesource.com/setup_10.x | bash -
        args:
          warn: no
      # ...
    

相关问题