it-swarm.com.de

So installieren Sie Node.JS unter Amazon Linux

Ich habe gesehen, wie man mit yum die Abhängigkeiten installiert und dann Node.JS & NPM aus dem Quellcode installiert. Während dies funktioniert, denke ich, dass Node.JS und NPM beide irgendwo in einem öffentlichen Repo sein sollten.

Wie kann ich Node.JS und NPM in einem Befehl unter AWS Amazon Linux installieren?

220
Tim Fulmer

Darauf gestolpert, war später seltsamerweise schwer zu finden. Hier für die Nachwelt setzen:

Sudo yum install nodejs npm --enablerepo=epel

EDIT 3: Ab Juli 2016 funktioniert EDIT 1 nicht mehr für Knoten 4 (und EDIT 2 auch nicht). Diese Antwort ( https://stackoverflow.com/a/35165401/78935 ) ergibt einen echten Einzeiler.

EDIT 1: Wenn Sie nach nodejs 4 suchen, versuchen Sie es mit dem EPEL-Testrepo:

Sudo yum install nodejs --enablerepo=epel-testing

EDIT 2: Führen Sie die folgenden Schritte aus, um von nodejs 0.12, das über das EPEL-Repo mit dem obigen Befehl installiert wurde, auf nodejs 4 aus dem EPEL-Testrepo zu aktualisieren:

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

Die neueren Pakete setzen die Knoten-Binärdateien in /usr/bin statt in /usr/local/bin.

Und etwas Hintergrund:

Die Option --enablerepo=epel veranlasst yum, nach Paketen im EPEL-Repository zu suchen.

EPEL (Extra Packages für Enterprise Linux) ist ein Open Source- und kostenloses Community-basiertes Repository-Projekt des Fedora-Teams, das 100% hochwertige Add-On-Softwarepakete für die Linux-Distribution einschließlich RHEL (Red Hat Enterprise Linux), CentOS und Scientific Linux bereitstellt. Das Epel-Projekt ist kein Bestandteil des RHEL/Cent-Betriebssystems, aber es ist für große Linux-Distributionen ausgelegt, indem es eine Vielzahl von Open-Source-Paketen wie Netzwerk, Sys-Admin, Programmierung, Überwachung usw. bereitstellt. Die meisten Epel-Pakete werden vom Fedora-Repo verwaltet.

Via http://www.tecmint.com/how-to-enable-epel-repository-for-rhel-centos-6-5/

381
Tim Fulmer

Wie andere gab mir die akzeptierte Antwort auch eine veraltete Version.

Hier ist ein anderer Weg, der sehr gut funktioniert:

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

Sie können das 10.x auch durch eine andere Version wie 8.x usw. ersetzen.

Sie können alle verfügbaren Versionen auf der NodeSource Github-Seite sehen und von dort auch ziehen, wenn Sie möchten.

170
Matthew Herbst

Die akzeptierte Antwort gab mir die Knoten 0.10.36 und npm 1.3.6, die sehr veraltet sind. Ich habe mir das neuste linux-x64-Archiv von der nodejs-Downloadseite besorgt und es war nicht allzu schwierig zu installieren: 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

Jetzt den gerade heruntergeladenen Teer upzipieren - 

tar xzf node.tgz

Führen Sie diesen Befehl aus und fügen Sie ihn auch zu Ihrem .bashrc hinzu:

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

(Beispiel: export PATH = "$ PATH: /home/ec2-user/mydirectory/node/node4.5.0-linux-x64/bin")

Und npm aktualisieren (nur einmal, nicht zu .bashrc hinzufügen):

npm install -g npm

Beachten Sie, dass -g dort, was global bedeutet, wirklich für die npm-Instanz bedeutet, die die gerade installierte Instanz ist und auf den aktuellen Benutzer beschränkt ist. Dies gilt für alle Pakete, die npm global installiert.

61
voltrevo

Die Prozedur, die für mich funktionierte (nach diesen eher alten Anweisungen mit ein paar Updates): 

  • check git ist git --version installiert oder installiert es über:
    Sudo yum install git 
  • installiere gcc und openssl:
    Sudo yum install gcc-c++ make
    Sudo yum install openssl-devel 
  • klonen Sie das Git-Repo in ein Verzeichnis mit dem Namen node (das Sie später entfernen können):
    git clone https://github.com/nodejs/node.git 
  • entscheiden Sie unter https://github.com/nodejs/node/releases , welche Knotenversion Sie möchten.
  • gehen Sie in das soeben erstellte Knotenverzeichnis und installieren Sie den Knoten
    cd node
    git checkout v6.1.0 - hinter der v die gewünschte Version einfügen
    ./configure
    make
    Sudo make install 
  • testen, ob der Knoten mit node --version oder einfach node installiert ist/arbeitet (Exit-Knoten über process.exit() oder ^C x 2 oder ^C + exit
  • Überprüfen Sie die npm-Version: npm --version und aktualisieren Sie sie ggf. über Sudo npm install -g npm
  • Optional: Entfernen Sie das Verzeichnis node mit rm -r node.

Anmerkungen:

  1. Die akzeptierte Antwort funktionierte nicht, da Sudo yum install nodejs --enablerepo=epel-testing den Fehler zurückgibt: No package nodejs available.
    ... und Sudo yum install nodejs --enablerepo=epel (dh ohne -testing) gaben nur sehr alte Versionen.
  2. Wenn Sie bereits eine alte Version des Knotens installiert haben, können Sie diese mit folgendem entfernen:
    Sudo npm uninstall npm -g ... da sich npm selbst deinstallieren kann
    Sudo yum erase nodejs
    Sudo rm -f /usr/local/bin/node
    (Sudo yum rm nodejs in der akzeptierten Antwort funktioniert nicht, da rm kein gültiger yum-Befehl ist, siehe yum --help)
  3. Es ist möglich, das Knoten-Repo über git clone git://github.com/nodejs/node.git statt git clone https://github.com/nodejs/node.git zu klonen, es können jedoch verschiedene Fehler auftreten (siehe hier ).
  4. Wenn Sie bereits ein /node-Verzeichnis von einer früheren Installation haben, entfernen Sie es, bevor Sie den Befehl git clone verwenden (oder es liegt ein Konflikt vor):
    rm -r node 
  5. Wenn Sie Probleme mit Sudo npm...-Befehlen wie Sudo: npm: command not found haben und/oder bei der Installation von Knotenpaketen ohne Sudo Berechtigungsprobleme haben, bearbeiten Sie Sudo nano /etc/sudoers und fügen Sie :/usr/local/bin am Ende der Zeile Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin hinzu, sodass Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin gelesen wird.
26
goredwards

Für die v4-LTS-Version verwenden Sie:

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

Für die Node.js v6 verwenden Sie:

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

Beim Versuch, native Addons unter Amazon Linux zu installieren, sind einige Probleme aufgetreten. Wenn Sie dies tun möchten, sollten Sie auch Build-Tools installieren:

yum install gcc-c++ make
18
birnbaum

Einfache Installation mit NVM ...

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

Ich bin gerade auf dieses gestoßen. Ich habe ein paar der populäreren Antworten ausprobiert, aber am Ende funktionierte für mich die schnelle Installationsanleitung von Amazon. 

Tutorial: Einrichten von Node.js in einer Amazon EC2-Instanz

Der Kern des Tutorials ist:

  1. Stellen Sie sicher, dass Sie auf die Instanz zugreifen.
  2. Nvm greifen: curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.0/install.sh | bash
  3. Aktiv . ~/.nvm/nvm.sh
  4. Installieren Sie den Knoten mit nvm nvm install 4.4.5 (HINWEIS: Sie können eine andere Version auswählen. Überprüfen Sie zunächst die Remote-Versionen, indem Sie $ nvm ls-remote ausführen.)
  5. Testen Sie abschließend, ob Sie Knoten Node korrekt installiert haben, indem Sie $ node -e "console.log('Running Node.js' + process.version)" ausführen.

Hoffentlich hilft das der nächsten Person.

12
troxwalt

Ich hatte Node.js 6.x installiert und wollte Node.js 8.x installieren.

Hier sind die Befehle, die ich verwendet habe (von Nodejs 'Site mit ein paar zusätzlichen Schritten, um die zwischengespeicherten Yum-Daten zu verarbeiten):

  1. Sudo yum remove nodejs: Deinstalliere Node.js 6.x (Ich weiß nicht, ob das notwendig war oder nicht)
  2. curl --silent --location https://rpm.nodesource.com/setup_8.x | Sudo bash - 
  3. Sudo yum clean all
  4. Sudo yum makecache: Generieren Sie den Metadaten-Cache neu (dies war nicht in den Dokumenten, aber Yum hat versucht, Node.jx 6.x erfolgreich zu installieren, bis ich die letzten beiden Befehle ausgegeben habe.)
  5. Sudo yum install nodejs: Installiere Node.js 8.x
5
Brad W

Sudo yum install nodejs npm --enablerepo=epel funktioniert für Amazon Linux AMI. curl --silent --location https://rpm.nodesource.com/setup_6.x | bash - yum -y install nodejs works für RedHat.

https://nodejs.org/de/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
Sunil Buddala

Die einfachste Lösung ist dies (tun Sie dies als 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

1
grepit

Die offizielle Dokumentation für EC2-Instance funktioniert für mich: https://docs.aws.Amazon.com/sdk-for-javascript/v2/developer-guide/setting-up-node-on-ec2-instance.html

 1. curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.0/install.sh | bash
 2. . ~/.nvm/nvm.sh
 3. nvm ls-remote (=> find your version x.x.x =>) nvm install  x.x.x
 4. node -e "console.log('Running Node.js ' + process.version)"
0
Taner Melikoglu

Wie in der offiziellen Dokumentation erwähnt, folgen Sie einfach zwei Schritten - 

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

Für diejenigen, die die akzeptierte Antwort in Ansible ohne weitere Suchen ausführen möchten, gebe ich die Aufgabe hier aus Gründen der Bequemlichkeit und der zukünftigen Referenz.

Zulässige Antwortempfehlung: https://stackoverflow.com/a/35165401/78935

Ansible Aufgabe gleichwertig

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

Das scheint niemand zu erwähnen. Unter Amazon Linux 2 ist die offizielle Methode zum Laden von EPEL:

  • Sudo Amazon-linux-extras install epel

... dann können Sie:

  • Sudo yum install nodejs

Siehe Extras Library (Amazon Linux 2)

0
Dai

Sie können den Knoten aktualisieren/installieren, indem Sie das installierte Paket auf der aktuellen Version erneut installieren. Dies kann dazu führen, dass während der Aktualisierung keine Fehler auftreten.

Dies geschieht von nvm mit dem folgenden Befehl. Hier habe ich meine Knotenversion auf 8 aktualisiert und alle verfügbaren Pakete auch auf Version 8 neu installiert!

nvm i v8 --reinstall-packages-from=default

Es funktioniert auch auf der AWS Linux-Instanz.

0
Soundharya AM