Node.js, sunucu tarafı programlama için bir JavaScript çalışma ortamıdır. Geliştiricilerin, tarayıcı tabanlı web geliştirmeden zaten aşina olduğu bir dil olan JavaScript kullanarak ölçeklenebilir projeler oluşturmalarına olanak tanır.

Bu kılavuzda, bir CentOS 8 sunucusuna Node.js’yi kurmanın iki farklı yolunu göstereceğiz.

  1. DNF kullanarak Node.js paketini CentOS’un varsayılan AppStream deposundan yüklemek
  2. Node Sürüm Yöneticisi nvm’yi yüklemek ve birden çok node.js sürümünü yüklemek ve yönetmek

NOT: Bu kılavuzdaki anlatımların doğru çalışması için, sunucuya root olmayan sudo yetkilerine sahip bir kullanıcı ile bağlanın.

CentOS AppStream Kullanmak

Node.js, CentOS 8’in varsayılan AppStream yazılım deposunda mevcuttur. Bu depo birden fazla node.js sürümünü barındırır ve uygun modül akışını etkinleştirerek aralarında seçim yapmanıza olanak tanır. İlk olarak dnf komutunu kullanarak node.js modülü için mevcut akışları listeleyin:

sudo dnf module list nodejs
Name       Stream    Profiles                               Summary
nodejs     10 [d]    common [d], development, minimal, s2i  Javascript runtime
nodejs     12        common, development, minimal, s2i      Javascript runtime

10 ve 12 olmak üzere iki sürüm mevcuttur. [d], sürüm 10’un varsayılan akış olduğunu belirtir. Node.js 12’yi yüklemeyi tercih ederseniz

sudo dnf module enable nodejs:12

ile sürüm 12 kararınızı onaylamanız istenecektir. Daha sonra sürüm 12 akışı etkinleşecek, böylece kuruluma devam edebiliriz.

sudo dnf install nodejs
node --version

v12.13.1

Node.js paketini yüklemek, bağımlılık olarak npm (Node Package Manager) yardımcı programını da kuracaktır. Doğru şekilde kurulduğunu da alttaki komutla doğrulayın:

npm -v

6.12.1

Bu noktada, CentOS yazılım depolarını kullanarak Node.js ve npm’yi başarıyla yükledik. Bir sonraki bölüm, aynı kurulum işlemlerini yapmak için Node Sürüm Yöneticisinin nasıl kullanılacağını gösterecektir.

Node Sürüm Yöneticisi’ni Kullanmak

Bence node.js ve npm yüklemenin en sağlıklı yolu bu. İlk adımdaki işlemler her ne kadar daha stabil gözükse de nvm ile kurulum yaptığınızda dosyalar kullanıcı dizinine kuruluyor. Bu yüzden paketleri global olarak kurarken yaşadığımız yetkilendirme sorunlarını yaşamıyoruz. Açıkçası npm paketlerini kurarken sudo kullanmaya karşıyım. Siz de kullanmayın. Özetle node sürüm yöneticisi en iyi dostunuz. Bu minik yazılım parçası, aynı anda Node.js’nin birçok farklı sürümünü ve bunlarla ilişkili Node paketlerini kurmanıza ve sürdürmenize olanak tanıyor.

NVM’yi CentOS 8 makinenize kurmak için projenin GitHub sayfasını ziyaret edin. Curl komutunu ana sayfada görüntülenen README dosyasından kopyalayın. Bu size kurulum komut dosyasının en son sürümünü verecektir.

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
source ~/.bash_profile

Şimdi, nvm ile hangi Node.js sürümlerinin mevcut olduğuna bakabiliriz:

nvm list-remote
       v12.13.0   (LTS: Erbium)
       v12.13.1   (LTS: Erbium)
       v12.14.0   (LTS: Erbium)
       v12.14.1   (LTS: Erbium)
       v12.15.0   (LTS: Erbium)
       v12.16.0   (LTS: Erbium)
       v12.16.1   (Latest LTS: Erbium)
        v13.0.0
        v13.0.1
        v13.1.0
        v13.2.0
        v13.3.0
        v13.4.0
        v13.5.0
        v13.6.0
        v13.7.0
        v13.8.0
        v13.9.0
       v13.10.0
       v13.10.1
       v13.11.0
       v13.12.0

Bu uzun listeden dilediğiniz sürümü kurabilirsiniz. Örneğin 13.6.0 sürümü için

nvm install v13.6.0

komutunu vermeniz yeterlidir. Kurulu olan sürümleri görmek için:

nvm list
->      v13.6.0
default -> v13.6.0
node -> stable (-> v13.6.0) (default)
stable -> 13.6 (-> v13.6.0) (default)

Ayrıca, Node’un uzun süreli desteklenen (LTS) sürümleri için takma adlar göreceksiniz:

lts/* -> lts/erbium (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.19.0 (-> N/A)
lts/erbium -> v12.16.1 (-> N/A)

Bu listeden takma adlara dayalı bir sürüm de kurabiliriz. Örneğin, en son uzun sürekli desteklenen sürüm olan erbium’u kurmak için:

nvm install lts/erbium

Downloading and installing node v12.16.1...
. . .
Now using node v12.16.1 (npm v6.13.4)

Kurulu sürümler arasında geçiş yapmak için:

nvm use v13.6.0

Now using node v13.6.0 (npm v6.13.4)

Kontrol için:

$ node -v

v13.6.0

Yarn Facebook ve Google mühendisleri tarafından npm’e alternatif olarak geliştirilen bir paket yöneticisidir. Detaylı bilgiye buradan ulaşabilirsiniz.

Kurulum:

npm install --global yarn

veya kısaltılmış haliyle:

npm i yarn -g

Kurulum sonrası versiyon kontrolü:

yarn --version

İşlemler sonunda doğru Node.js ve npm sürümü yüklendi. Kullanacağınız node.js sürümü sabit kalsa bile npm versiyon güncellemesini almak için:

npm i -g npm

komutunu yürütün ve paket yöneticisinin güncel kalmasını sağlayın. Bazı yazılımlar derleme için belirli node versiyonları istemektedir. Artık kolayca node sürümleri arasında geçiş yapabilir ve işiniz bittiğinde başka sürüme dönebilirsiniz.