it-swarm.com.de

Wie installiere ich Node.JS unter CentOS?

Ich habe zahlreiche Installationsanweisungen für Node.js gefunden, aber sie scheinen alle so kompliziert zu sein - ich bin kein Super-Systemadministrator, aber ich kann mich fortbewegen. Ich habe yum auf dem System, aber ich habe keine node.js-Pakete gefunden, und ich bin nicht sicher, wie ich Code auf dem Server kompilieren oder wo ich ihn ablegen soll.

132
qodeninja
su - 
yum install gcc-c++ openssl-devel
cd /usr/local/src
wget http://nodejs.org/dist/node-latest.tar.gz
tar zxvf node-latest.tar.gz
(cd into extracted folder: ex "cd node-v0.10.3")
./configure
make
make install

Beachten Sie, dass hierfür Python 2.6+ erforderlich ist, um ./configure Oben zu verwenden. Sie können die Datei "configure" so ändern, dass sie auf zeigt python2.7 In Zeile 1, falls erforderlich.

Um ein RPM-Paket zu erstellen, können Sie FPM verwenden:

# wget http://nodejs.org/dist/node-latest.tar.gz
# tar zxvf node-latest.tar.gz
(cd into extracted folder: ex "cd node-v0.10.3")
# ./configure --prefix=/usr/
# make
# mkdir /tmp/nodejs
# make install DESTDIR=/tmp/nodejs/
# tree -L 3 /tmp/nodejs/
/tmp/nodejs/
└── usr
    ├── bin
    │   ├── node
    │   ├── node-waf
    │   └── npm -> ../lib/node_modules/npm/bin/npm-cli.js
    ├── include
    │   └── node
    ├── lib
    │   ├── dtrace
    │   ├── node
    │   └── node_modules
    └── share
        └── man

Erstellen Sie nun das Paket nodejs:

# fpm -s dir -t rpm -n nodejs -v 0.8.18 -C /tmp/nodejs/ usr/bin usr/lib

Dann installieren und überprüfen Sie die Version:

# rpm -ivh nodejs-0.8.18-1.x86_64.rpm 
Preparing...                ########################################### [100%]
   1:nodejs                 ########################################### [100%]

# /usr/bin/node --version
v0.8.18

Quelle: https://github.com/jordansissel/fpm/wiki/PackageMakeInstall

139
quanta

Wenn Sie über CentOS 6.x verfügen und das EPEL-Repository aktiviert haben, können Sie mit yum node/npm installieren:

$ Sudo yum install npm

Überprüfen Sie nach Abschluss der Installation, ob der Knoten ordnungsgemäß eingerichtet ist:

$ node -v

(Sollte etwas wie v0.10.36 Zurückgeben).

Wenn Sie spätere Versionen von Node.js (z. B. 4.x, 5.x usw.) möchten, können Sie anstelle von EPEL das Nodesource yum repository verwenden.

65
geerlingguy

Das Gist "Installieren von Node.js über den Paketmanager" enthält KEINE Anweisungen mehr zum Installieren von Nodejs unter CentOS. Seit Fedora 18 wird nodejs Teil des Standard-Repos. Ich versuche "epel-Fedora-nodejs" repo und finde es nicht mehr aktualisiert, so dass die Version auf dem veralteten 0.6.0 bleibt.

Die gute Nachricht ist, dass wir Kirchenschiff , eine virtuelle Umgebung für Knoten, haben, um uns zu helfen.

https://github.com/isaacs/nave

Die Installation von nodejs ist jetzt kinderleicht.

$ wget https://raw.github.com/isaacs/nave/master/nave.sh
$ chmod +x nave.sh
$ ./nave.sh install 0.8.8
$ ./nave.sh use 0.8.8
$ node -v  
v0.8.8

In der Datei nave.sh müssen Sie möglicherweise die lokalen URLs so ändern, dass sie mit der neuesten dist-Struktur von nodejs übereinstimmen. Für 0.11.0 habe ich die Datei nave.sh so geändert, dass sie die folgende URL hat

" http://nodejs.org/dist/v $ version/node-v $ version-linux-x64.tar.gz"

27
user974312

Für CentOS

yum install gcc-c++ make git
cd /usr/local/src/
git clone git://github.com/joyent/node.git
cd node
./configure
make
make install
13
Jason Royle

[Bearbeiten] Vielen Dank, David, dass Sie in den Kommentaren unten darauf hingewiesen haben, dass die Website nodejs.tchol.org jetzt ist Verweis auf eine Spam-Site (sic!). Diese Antwort funktioniert also nicht mehr. Verwenden Sie sie nicht!

Ich kann bestätigen, dass die Methode, die Chris in seiner Lösung erklärt hat, in CentOS 5.4 funktioniert (ich habe es vor einer Minute getan :))

wget http://nodejs.tchol.org/repocfg/el/nodejs-stable-release.noarch.rpm
yum localinstall --nogpgcheck nodejs-stable-release.noarch.rpm
yum install nodejs-compat-symlinks npm

PS: Natürlich müssen Sie root sein (oder Sudo verwenden), um das zu installieren.

Neben der Installation von der Quelle (was immer eine Option ist) gibt es vielleicht noch eine Alternative: hier habe ich das gelesen "node.js wurde ab Dezember 2012 in Fedora Rawhide aufgenommen und wird es sein verfügbar in Fedora 18. ", also wird es vielleicht irgendwann in die Standard-CentOS-Repositorys gelangen

Ich werde mir das ansehen ..

11
Luke

Wie oben erwähnt, ist "tchol.org" nicht mehr vorhanden, sodass CentOS-Mitarbeiter entweder die Verwendung eines Paketmanagers aufgeben oder zu einem anderen Betriebssystem wechseln möchten. Ich habe mit mir selbst einen Pakt gegen jeden gemacht, der (wieder) das Erste auf allen außer experimentellen/Entwicklungsboxen gemacht hat.

Glücklicherweise sind RPMs noch verfügbar unter: http://patches.fedorapeople.org/oldnode/stable/el6/x86_64/

Ignorieren Sie einfach die Drehzahl für das Repo-Installationsprogramm, das yum zur nicht mehr existierenden Site leitet. Das sollte uns ein wenig Zeit verschaffen, es sei denn/bis sie zu veraltet sind.

Ich werde meine Augen offen halten für neuere Repos und zurückschicken, wenn ich sie finde.

10
JosephK

Dies funktionierte für mich unter CentOS 5.7:

yum install openssl-devel 
yum install python27
yum install gcc-c++
cd /usr/local/src
wget http://nodejs.org/dist/node-latest.tar.gz
tar zxvf node-latest.tar.gz
cd node-v[tab]
python2.7 configure
make PYTHON=python2.7
make install
8
Will

Es gibt noch einen Ansatz, den ich in keiner der anderen Antworten aufgeführt habe, nämlich die Verwendung der Binärdistributionen für Linux, die veröffentlicht seit 0.8.6 sind

Hier ist das Skript, das ich benutze:

# get the latest stable binary 
latest_node=$(curl http://nodejs.org/dist/latest/SHASUMS.txt | grep 'linux-x64.tar.gz' | awk '{ print $2 }')
wget -O ~/nodestable.tar.gz http://nodejs.org/dist/latest/$latest_node
cd /usr/local/
Sudo tar xzvf ~/nodestable.tar.gz --strip=1

Oder wenn Sie eine bestimmte Version wünschen (z. B. um bei der 0.8-Serie zu bleiben):

wget http://nodejs.org/dist/v0.8.22/node-v0.8.22-linux-x64.tar.gz
cd /usr/local/
Sudo tar xzvf ~/node-v0.8.22-linux-x64.tar.gz --strip=1

Unter CentOS 6.3 musste ich die folgenden Links hinzufügen, damit die Befehle node und npm entweder von normalen Benutzern oder von Sudo aus funktionieren. Abhängig von Ihrer Version wird dies möglicherweise nicht benötigt.

Sudo ln -s /usr/local/bin/node /usr/bin/node
Sudo ln -s /usr/local/lib/node /usr/lib/node
Sudo ln -s /usr/local/bin/npm /usr/bin/npm
Sudo ln -s /usr/local/bin/node-waf /usr/bin/node-waf

Ehrlich gesagt ist die Situation für node.js unter CentOS/RHEL ziemlich schlecht, da keines der Repos node.js enthält (siehe verwandte Frage hier ). Diese Antwort hat die gleichen Nachteile wie zuvor für das Kompilieren aus dem Quellcode erwähnt.

7
explunit

Die obigen Antworten sind veraltet

ALS WURZEL

curl -sL https://rpm.nodesource.com/setup | bash -
yum install -y nodejs

und du bist fertig.

überprüfen Sie Ihre Installation mit

node -v
7
josh123a123

Niemand erwähnte nvm, um (mehrere) sicher und einfach zu handhaben Node Installationen https://github.com/creationix/nvm ? Ich finde es so nützlich.

Sogar nützlich, um einen Node Release-Dateibaum und damit benutzerdefinierte RPM-Pakete zu erstellen, ohne zu viel Skripte zu erstellen, latest-node, wget, ./configure, make, make install bla bla.

nvm install 0.10.9

Lädt Binärdateien herunter oder kompiliert den Quellcode gemäß der Version.

5
fsoppelsa

Führen Sie als Root unter RHEL, CentOS oder Fedora für Node.js v4 LTS Argon aus:

curl --silent --location https://rpm.nodesource.com/setup_4.x | bash -

Alternativ für Node.js v5:

curl --silent --location https://rpm.nodesource.com/setup_5.x | bash -

Alternativ für Node.js 0.10:

curl --silent --location https://rpm.nodesource.com/setup | bash -

Dann installieren Sie als root:

yum -y install nodejs

quelle: https://nodejs.org/en/download/package-manager/

4
itzhar

Ich habe einige ziemlich einfache Anweisungen zusammen mit einer .spec-Datei hier:

http://www.chrisabernethy.com/installing-node-js-on-centos-redhat/

Sie werden dies aus dem Quellcode kompilieren, daher müssen Sie sicherstellen, dass Sie alle erforderlichen Pakete dafür auf Ihrem System haben (gcc und Freunde). Diese Anleitung dient zum Erstellen eines RPM. Wenn Sie also die erforderlichen Pakete vermissen, teilt Ihnen rpmbuild mit, welche Sie zuerst installieren müssen.

3
Chris

Sie können nodebrew verwenden. $ curl -L git.io/nodebrew | Perl - setup $ export PATH=$HOME/.nodebrew/current/bin:$PATH $ source ~/.bashrc $ nodebrew install-binary latest $ nodebrew use latest $ node -v

3
aomoriringo

Du brauchst auch npm

git clone https://github.com/isaacs/npm.git
cd npm
Sudo make install
3
Beachhouse

Meine Antwort für Version 4+:

yum -y install wget
wget https://nodejs.org/dist/v4.0.0/node-v4.0.0-linux-x64.tar.gz
tar xzf node-v4.0.0-linux-x64.tar.gz -C /usr/local
rm -rf node-v4.0.0-linux-x64.tar.gz
mv /usr/local/node-v4.0.0-linux-x64 /usr/local/node
ln -s /usr/local/node/bin/node /usr/bin/node
ln -s /usr/local/node/bin/npm /usr/bin/npm

Überprüfen Sie den Ordner https://nodejs.org/dist/latest/ , um den Download-Link für die neueste Version zu finden.

2
Evan Siroky

hier ist meine Docker-Datei, die den Knoten v0.10.36 in centOS 7 installiert hat

FROM centos:7

RUN    yum -y update
RUN    yum -y install vi, vim, unzip, tar
RUN    yum -y install wget, curl, git

RUN    yum -y install epel-release
RUN    yum -y install npm
2
Dinis Cruz

Für Ubuntu funktionierte dies für mich für Version 0.4.10

cd /usr/local/src/
Sudo wget http://nodejs.org/dist/node-v0.4.10.tar.gz
Sudo tar zxvf node-v0.4.10.tar.gz 
cd node-v0.4.10/
Sudo ./configure 
Sudo make
Sudo make install
2
Michael Durrant

Nach der Installation mit der am besten bewerteten Antwort konnte ich keine globalen Module (-g) ohne Sudo-Berechtigungen installieren. Das NPM-Update zeigte Fehler. Die folgende Methode hat für mich perfekt funktioniert. SU- oder Sudo-Berechtigungen sind nicht erforderlich.

Ich habe Node.js und NPM mit der folgenden Methode installiert ( https://Gist.github.com/isaacs/579814 ), aber zwei Befehlszeilen gemäß dem Hinweis aus einem Kommentar von geändert Deesejohn auf dieser Seite.

cd
Sudo yum install gcc-c++
echo 'export PATH=$HOME/local/bin:$PATH' >> ~/.bashrc
. ~/.bashrc
mkdir ~/local
mkdir ~/node-latest-install
cd ~/node-latest-install
curl http://nodejs.org/dist/node-latest.tar.gz | tar xz --strip-components=1
./configure --prefix=$HOME/local
make install
curl -L https://www.npmjs.org/install.sh | sh

Überprüfen Sie die installierte Version mit node -v und npm -v

1

Der folgende Code hat unter CentOS 6 ziemlich gut funktioniert

wget http://nodejs.tchol.org/repocfg/el/nodejs-stable-release.noarch.rpm
yum localinstall --nogpgcheck nodejs-stable-release.noarch.rpm
yum install nodejs-compat-symlinks npm

Es funktioniert nicht mehr, http://nodejs.tchol.org ist nicht mehr online.

1
PaVan G Jakati

Ich habe diese Installation vor nicht allzu langer Zeit selbst auf RHEL 5.8 durchgeführt. Da nodejs.tchol.org offline geschaltet wird, besteht die einzige Option leider darin, es aus dem Quellcode zu erstellen.

Der Erstellungsprozess wurde jedoch ziemlich kompliziert, da das Erstellungsskript python Code enthält, der nicht mit der Standardversion von Python auf RHEL. After) funktioniert Mit viel Versuch und Irrtum (und viel Googeln) habe ich diesen Blog-Beitrag gefunden, der im Grunde genommen Schritt für Schritt die folgenden erforderlichen Aufgaben beschreibt.

ein. Installieren Sie Python 2.6 b. Richten Sie diese Version von python als alternative Version ein und legen Sie sie dann als Standard fest. C. Konfigurieren und installieren Sie node.js d. Switching = Python zurück zur Standardversion 2.4.

Der Schlüssel ist, dass Sie danach wieder zu Python 2.4) wechseln sollten; andernfalls schlagen einfache Dinge wie yum fehl.

http://www.robeesworld.com/blog/31/installing_node_js_0_8_under_centos_5_8

1
Victor Chan