Takip et

Ubuntu 14.04 Sunucusuna Node.js Kurulumu Kapsamlı Rehberi

Ubuntu 14.04 Sunucusuna Node.js Kurulumu Kapsamlı Rehberi Node.js, sunucu tarafı uygulamalar geliştirmek için kullanılan, JavaScript tabanlı, a

Ubuntu 14.04 Sunucusuna Node.js Kurulumu Kapsamlı Rehberi

Node.js, sunucu tarafı uygulamalar geliştirmek için kullanılan, JavaScript tabanlı, açık kaynaklı ve çalışma zamanı bir ortamıdır. Olay odaklı, engellemeyen G/Ç modeli sayesinde hafif ve verimli bir yapı sunar. Bu özellikleri, onu gerçek zamanlı uygulamalar, mikro hizmetler ve API’ler gibi yüksek performans gerektiren senaryolar için ideal bir seçenek haline getirmiştir. JavaScript’i hem istemci hem de sunucu tarafında kullanabilme yeteneği, geliştiricilere tam yığın (full-stack) deneyimi sunarak kod tabanı tutarlılığını artırır ve geliştirme sürecini hızlandırır.

Bu makale, popüler bir Linux dağıtımı olan Ubuntu’nun 14.04 sürümü üzerinde Node.js kurulumunu adım adım ve kapsamlı bir şekilde ele alacaktır. Ubuntu 14.04, artık uzun süreli destek (LTS) süresini tamamlamış eski bir sürüm olsa da, mevcut sistemlerde Node.js çalıştırma ihtiyacı veya öğrenme amaçlı kullanımlar için bu rehber hala geçerliliğini korumaktadır. Farklı ihtiyaç ve tercihlere yönelik olarak birden fazla kurulum yöntemini inceleyeceğiz: Ubuntu’nun varsayılan depolarından kurulum, NodeSource PPA kullanarak daha güncel bir sürüm elde etme, Node Version Manager (NVM) ile birden fazla Node.js sürümünü yönetme ve son olarak kaynaktan derleyerek kurulum yapma. Her yöntemin avantajları ve dezavantajları ile birlikte, kurulum sonrası yaygın adımlar ve olası sorun giderme yöntemleri de detaylandırılacaktır.

### Ön Koşullar

Node.js kurulumuna başlamadan önce aşağıdaki ön koşulların yerine getirildiğinden emin olmalısınız:

* Ubuntu 14.04 Sunucusu: Kurulumu yapacağınız çalışan bir Ubuntu 14.04 sunucunuz olmalıdır. Bu, fiziksel bir sunucu, sanal makine veya bulut tabanlı bir örnek olabilir.
* Root veya Sudo Yetkileri: Kurulum komutlarını çalıştırmak için root kullanıcısı olarak oturum açmış olmanız veya sudo yetkilerine sahip bir kullanıcı hesabınızın bulunması gerekmektedir.
* İnternet Bağlantısı: Sunucunuzun paketleri indirebilmesi için aktif bir internet bağlantısına ihtiyacı vardır.
* Temel Terminal Bilgisi: Linux komut satırı ve temel terminal işlemleri hakkında bilgi sahibi olmak, adımları takip etmenizi kolaylaştıracaktır.

Bu ön koşullar sağlandığında, Node.js kurulumuna geçmeye hazırız.

### Node.js Kurulum Yöntemleri

Node.js’i Ubuntu 14.04 üzerine kurmak için birkaç farklı yöntem bulunmaktadır. Her yöntemin kendine özgü avantajları ve kullanım senaryoları vardır. İhtiyaçlarınıza en uygun olanı seçmek için her birini inceleyelim.

#### Yöntem 1: Ubuntu’nun Resmi Depolarından Kurulum

Bu yöntem, Node.js’i Ubuntu’nun resmi paket yöneticisi olan APT (Advanced Package Tool) aracılığıyla kurmanın en basit yoludur. Ancak, Ubuntu 14.04’ün depolarında bulunan Node.js sürümü genellikle oldukça eski olacaktır. Bu durum, en son özelliklere veya güvenlik güncellemelerine ihtiyacınız varsa bir dezavantaj olabilir. Yine de, hızlı bir başlangıç yapmak veya çok spesifik bir eski sürümü kullanmak istiyorsanız bu yöntem uygun olabilir.

Adım 1: Paket Listesini Güncelleme

Kuruluma başlamadan önce, sunucunuzdaki paket listesini güncelleyerek en son paket bilgilerini aldığınızdan emin olun:

sudo apt-get update

Adım 2: Node.js ve NPM’i Kurma

Paket listesi güncellendikten sonra, nodejs ve npm (Node Package Manager) paketlerini aşağıdaki komutla kurabilirsiniz:

sudo apt-get install nodejs npm

Ubuntu 14.04’te, nodejs paketi genellikle node komutu yerine nodejs komutunu kullanır. Bu durum, bazı Node.js uygulamaları veya komut dosyaları için sorunlara yol açabilir. Bu sorunu aşmak için, node komutuna bir sembolik bağlantı (symlink) oluşturmanız önerilir:

sudo ln -s /usr/bin/nodejs /usr/bin/node

Adım 3: Kurulumu Doğrulama

Kurulum tamamlandıktan sonra, Node.js ve NPM’in doğru bir şekilde kurulduğunu ve sürümlerini kontrol ederek doğrulayabilirsiniz:

node -v
npm -v

Çıktı olarak yüklü Node.js ve NPM sürümlerini görmelisiniz. Unutmayın, bu sürümler Ubuntu 14.04’ün depolarındaki eski sürümler olacaktır. Örneğin, Node.js v0.10.x gibi bir sürümle karşılaşabilirsiniz.

#### Yöntem 2: NodeSource PPA Kullanarak Kurulum (Önerilen Yöntem)

NodeSource, Node.js’in daha güncel sürümlerini Ubuntu ve diğer Debian tabanlı sistemler için sağlayan özel bir PPA (Personal Package Archive) sunar. Bu yöntem, Ubuntu’nun resmi depolarından daha yeni Node.js sürümlerine erişmenizi sağlar ve genellikle üretim ortamları için önerilir, çünkü daha güncel güvenlik yamalarını ve performans iyileştirmelerini içerir.

Adım 1: NodeSource PPA’yı Ekleme

NodeSource PPA’yı eklemek için öncelikle curl paketini kurmanız gerekebilir:

sudo apt-get install curl

Ardından, Node.js’in belirli bir LTS (Uzun Süreli Destek) sürümünü seçerek PPA’yı sisteminize ekleyebilirsiniz. Ubuntu 14.04 için Node.js 8.x veya 10.x gibi LTS sürümleri genellikle iyi bir denge sunar. Bu örnekte Node.js 8.x’i kullanacağız, ancak ihtiyacınıza göre setup_8.x kısmını setup_10.x veya setup_12.x (eğer 14.04 için destekleniyorsa) ile değiştirebilirsiniz.

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -

Bu komut, NodeSource PPA’yı sisteminize ekler ve aynı zamanda paket listenizi otomatik olarak günceller. sudo -E seçeneği, mevcut ortam değişkenlerini (PATH gibi) komuta aktarmak için kullanılır.

Adım 2: Node.js’i Kurma

PPA eklendikten ve paket listesi güncellendikten sonra, Node.js’i aşağıdaki komutla kurabilirsiniz:

sudo apt-get install nodejs

Bu kurulum, node komutunu doğrudan kullanmanızı sağlar ve npm de Node.js ile birlikte otomatik olarak kurulur. Ayrı bir sembolik bağlantı oluşturmanıza gerek kalmaz.

Adım 3: Kurulumu Doğrulama

Kurulumu doğrulamak için Node.js ve NPM sürümlerini kontrol edin:

node -v
npm -v

Artık Ubuntu’nun depolarından alacağınızdan çok daha yeni bir Node.js sürümüne sahip olmalısınız (örneğin, v8.x.x veya v10.x.x).

#### Yöntem 3: NVM (Node Version Manager) Kullanarak Kurulum

NVM, Node.js’in birden fazla sürümünü aynı sistemde yönetmenizi sağlayan güçlü bir araçtır. Bu, farklı projeler için farklı Node.js sürümlerine ihtiyacınız olduğunda veya yeni bir Node.js sürümünü test etmek istediğinizde son derece kullanışlıdır. NVM, Node.js’i kullanıcı bazlı olarak kurar, yani sistem genelinde bir kurulum yerine, NVM’i kuran kullanıcının erişebileceği bir dizine yükler.

Adım 1: NVM İçin Gerekli Bağımlılıkları Kurma

NVM’i ve Node.js’i kaynak koddan derlemek için bazı bağımlılıklara ihtiyacınız olacaktır. Bu bağımlılıkları aşağıdaki komutla kurun:

sudo apt-get update
sudo apt-get install build-essential libssl-dev

Adım 2: NVM’i Kurma

NVM’i kurmak için, GitHub deposundan kurulum betiğini indirmek ve çalıştırmak en kolay yoldur. Aşağıdaki komutu kullanarak en güncel NVM sürümünü kurabilirsiniz (sürüm numarasını kontrol etmek için NVM GitHub sayfasını ziyaret edebilirsiniz):

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

Kurulum betiği tamamlandıktan sonra, NVM’in kabuğunuza yüklenmesi için terminal oturumunuzu yeniden başlatmanız veya aşağıdaki komutlardan birini çalıştırmanız gerekir:

source ~/.bashrc

veya

source ~/.profile

veya

source ~/.nvm/nvm.sh

NVM’in başarıyla kurulduğunu doğrulamak için nvm --version komutunu çalıştırın. NVM sürüm numarasını görmelisiniz.

Adım 3: Node.js Sürümlerini NVM ile Kurma

NVM kurulduktan sonra, istediğiniz Node.js sürümlerini kurmaya başlayabilirsiniz. Önce mevcut Node.js sürümlerini listelemek için:

nvm ls-remote

Bu komut, NVM aracılığıyla kurabileceğiniz tüm Node.js sürümlerini listeler. Belirli bir sürümü kurmak için nvm install komutunu kullanın. Örneğin, Node.js 10.x LTS’nin en son sürümünü kurmak için:

nvm install 10

Veya belirli bir sürümü kurmak için (örneğin, 10.24.1):

nvm install 10.24.1

Başka bir sürüm, örneğin Node.js 8.x LTS’yi de kurabilirsiniz:

nvm install 8

Kurduğunuz tüm Node.js sürümlerini listelemek için:

nvm ls

Adım 4: Node.js Sürümleri Arasında Geçiş Yapma

Kurduğunuz Node.js sürümleri arasında geçiş yapmak için nvm use komutunu kullanın:

nvm use 10.24.1

Belirli bir sürümü varsayılan olarak ayarlamak ve yeni terminal oturumlarında otomatik olarak etkinleştirmek için:

nvm alias default 10.24.1

Adım 5: Kurulumu Doğrulama

Şu anda aktif olan Node.js ve NPM sürümlerini kontrol edin:

node -v
npm -v

NVM, Node.js geliştiricileri için en esnek ve önerilen yöntemdir, çünkü farklı projeler için farklı gereksinimleri kolayca yönetmenizi sağlar.

#### Yöntem 4: Kaynaktan Derleyerek Kurulum

Bu yöntem, Node.js’in en son özelliklerini veya belirli bir yapılandırmayı kullanmak istediğinizde tercih edilebilir. Ancak, diğer yöntemlere göre daha karmaşıktır ve bakım açısından daha fazla çaba gerektirir. Üretim ortamları için genellikle önerilmez.

Adım 1: Gerekli Bağımlılıkları Kurma

Kaynaktan derleme yapmak için bazı geliştirme araçlarına ve kütüphanelerine ihtiyacınız olacaktır:

sudo apt-get update
sudo apt-get install build-essential libssl-dev python

Adım 2: Node.js Kaynak Kodunu İndirme

Node.js’in resmi web sitesinden (nodejs.org) istediğiniz sürümün kaynak kodunu indirin. Örneğin, Node.js 10.24.1 sürümünü indirmek için:

wget https://nodejs.org/dist/v10.24.1/node-v10.24.1.tar.gz

Adım 3: Kaynak Kodu Çıkarma ve Derleme

İndirdiğiniz arşiv dosyasını çıkarın ve dizinine gidin:

tar -xzf node-v10.24.1.tar.gz
cd node-v10.24.1

Şimdi derleme işlemini başlatın. Bu işlem, sunucunuzun işlem gücüne bağlı olarak biraz zaman alabilir. -j parametresi, kaç çekirdek kullanılacağını belirtir, bu da derleme süresini hızlandırabilir (örneğin, make -j4 4 çekirdek kullanır):

./configure
make -j$(nproc) # nproc, mevcut CPU çekirdeği sayısını döndürür
sudo make install

Adım 4: Kurulumu Doğrulama

Derleme ve kurulum tamamlandıktan sonra, Node.js ve NPM sürümlerini kontrol edin:

node -v
npm -v

Bu yöntem, Node.js’i /usr/local/bin dizinine kurar, bu da sistem genelinde erişilebilir olmasını sağlar.

### Kurulum Sonrası Adımlar ve Yaygın Görevler

Node.js’i başarıyla kurduktan sonra, geliştirme ve dağıtım süreçlerinde size yardımcı olacak bazı yaygın görevler ve en iyi uygulamalar bulunmaktadır.

#### Node.js Sürümünü Güncelleme

* APT Yöntemiyle Kurulan Node.js: NodeSource PPA’yı kullandıysanız, Node.js’i güncellemek için standart APT komutlarını kullanabilirsiniz:

sudo apt-get update
    sudo apt-get upgrade nodejs

Eğer NodeSource PPA’yı farklı bir sürüme geçirmek isterseniz (örneğin 8.x’ten 10.x’e), mevcut Node.js’i kaldırıp yeni PPA’yı ekleyerek yeniden kurmanız gerekebilir.
* NVM Yöntemiyle Kurulan Node.js: NVM ile güncelleme, aslında yeni bir sürümü kurup mevcut sürüm yerine kullanmaktır.

nvm install 12 # Yeni bir sürüm kur
    nvm use 12     # Yeni sürümü kullan
    nvm alias default 12 # Yeni sürümü varsayılan yap
    nvm uninstall 10 # Eski sürümü kaldır (isteğe bağlı)

* Kaynaktan Derlenerek Kurulan Node.js: Kaynaktan derlenmiş bir sürümü güncellemek için, yeni sürümün kaynak kodunu indirip yukarıdaki derleme adımlarını tekrarlamanız gerekir. Bu, en zahmetli güncelleme yöntemidir.

#### NPM’i Güncelleme

NPM, Node.js ile birlikte gelse de, genellikle Node.js’ten daha sık güncellenir. En son NPM sürümüne sahip olmak iyi bir uygulamadır:

npm install -g npm@latest

-g bayrağı, paketi global olarak, yani tüm Node.js projelerinizde erişilebilir olacak şekilde kurar.

#### Global NPM Paketleri Kurulumu

Bazı NPM paketleri, komut satırı araçları olarak global olarak kurulur. Örneğin, Node.js uygulamalarını yönetmek için popüler bir araç olan PM2’yi global olarak kurmak:

npm install -g pm2

#### Basit Bir Node.js Uygulaması Çalıştırma

Kurulumunuzun çalıştığından emin olmak için basit bir “Hello World” uygulaması oluşturalım.

1. app.js adında bir dosya oluşturun:

nano app.js

2. Dosyaya aşağıdaki kodu yapıştırın:

const http = require('http');

    const hostname = '0.0.0.0'; // Tüm ağ arayüzlerinden erişilebilir
    const port = 3000;

    const server = http.createServer((req, res) => {
      res.statusCode = 200;
      res.setHeader('Content-Type', 'text/plain');
      res.end('Merhaba Node.js Dunyasi!\n');
    });

    server.listen(port, hostname, () => {
      console.log(Sunucu http://${hostname}:${port}/ adresinde calisiyor.);
    });

3. Dosyayı kaydedin ve kapatın (CTRL+X, Y, Enter).
4. Uygulamayı çalıştırın:

node app.js

Terminalde “Sunucu http://0.0.0.0:3000/ adresinde calisiyor.” mesajını görmelisiniz. Şimdi web tarayıcınızdan sunucunuzun IP adresini ve 3000 portunu kullanarak (örneğin, http://sunucu_ip_adresi:3000) uygulamaya erişebilirsiniz. Güvenlik duvarınızın 3000 portuna izin verdiğinden emin olun.

#### PM2 ile Uygulama Yönetimi

PM2 (Process Manager 2), Node.js uygulamalarını üretim ortamında yönetmek için kullanılan bir süreç yöneticisidir. Uygulamalarınızın sürekli çalışmasını sağlar, yeniden başlatmalarını yönetir ve kaynak kullanımını izler.

1. Daha önce global olarak kurduğunuz PM2’yi kullanarak app.js uygulamasını başlatın:

pm2 start app.js

2. Çalışan tüm PM2 süreçlerini listelemek için:

pm2 list

3. Uygulama günlüklerini görmek için:

pm2 logs app

4. Bir uygulamayı durdurmak, yeniden başlatmak veya silmek için:

pm2 stop app
    pm2 restart app
    pm2 delete app

5. PM2’nin sunucu yeniden başlatıldığında uygulamalarınızı otomatik olarak başlatmasını sağlamak için:

pm2 startup systemd # veya pm2 startup init.d
    pm2 save

pm2 startup komutu, sisteminize uygun bir başlatma betiği oluşturur. pm2 save komutu ise mevcut çalışan süreç listesini kaydeder, böylece sistem yeniden başlatıldığında PM2 bu süreçleri tekrar başlatabilir.

### Sorun Giderme

Node.js kurulumu veya kullanımı sırasında karşılaşabileceğiniz bazı yaygın sorunlar ve çözümleri:

#### node: command not found veya npm: command not found

* Neden: Node.js veya NPM’in PATH ortam değişkeninizde tanımlı olmayan bir konuma kurulmuş olması veya kurulumun başarısız olması.
* Çözüm:
* Eğer NodeSource PPA veya kaynaktan derleme yöntemini kullandıysanız, node komutu doğrudan çalışmalıdır.
* Eğer Ubuntu depolarından kurduysanız, sudo ln -s /usr/bin/nodejs /usr/bin/node komutuyla bir sembolik bağlantı oluşturduğunuzdan emin olun.
* Eğer NVM kullandıysanız, source ~/.bashrc veya source ~/.profile komutunu çalıştırarak NVM’in kabuğunuza yüklendiğinden emin olun. Ayrıca, nvm use ile aktif bir Node.js sürümü seçtiğinizden emin olun.
* Tüm kurulum adımlarını dikkatlice tekrarlayın.

#### EACCES Hataları (NPM İzin Sorunları)

* Neden: NPM, global paketleri /usr/local gibi sistem genelindeki dizinlere kurmaya çalışırken yetersiz izinlerle karşılaşabilir. sudo kullanmadan global paket kurmaya çalıştığınızda bu hata sıkça görülür.
* Çözüm:
* Önerilen Yöntem (NVM): Eğer NVM kullanıyorsanız, bu tür izin sorunlarıyla karşılaşma olasılığınız düşüktür, çünkü NVM Node.js’i kullanıcı dizininize kurar ve NPM paketleri de genellikle buraya kurulur.
* NPM’in Varsayılan Dizinini Değiştirme: NPM’in global paketleri kullanıcınızın ana dizininde bir konuma kurmasını sağlamak için NPM’in varsayılan dizinini değiştirebilirsiniz. Bu, sudo kullanmaktan kaçınarak güvenlik risklerini azaltır.

mkdir ~/.npm-global
        npm config set prefix '~/.npm-global'
        echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.profile
        source ~/.profile

Bu adımları uyguladıktan sonra, global NPM paketlerini sudo kullanmadan kurabilirsiniz.
* sudo Kullanımı (Tavsiye Edilmez): Geçici bir çözüm olarak, global NPM paketlerini kurarken sudo kullanabilirsiniz (sudo npm install -g ). Ancak bu, NPM’in root izinleriyle çalışmasına neden olur ve güvenlik açısından riskli olabilir.

#### Eski Node.js/NPM Sürümleri

* Neden: Ubuntu’nun varsayılan depolarından Node.js kurduysanız, çok eski bir sürümle karşılaşmanız normaldir.
* Çözüm: Daha güncel sürümler için NodeSource PPA veya NVM yöntemlerini kullanın. Bu yöntemler, en son LTS veya kararlı Node.js sürümlerine erişmenizi sağlar.

### Sonuç

Bu makalede, Ubuntu 14.04 sunucusuna Node.js kurmak için dört farklı yöntemi detaylı bir şekilde inceledik: Ubuntu’nun resmi depolarından, NodeSource PPA kullanarak, NVM (Node Version Manager) ile ve kaynaktan derleyerek. Her yöntemin kendine özgü avantajları ve dezavantajları bulunmaktadır.

* Ubuntu’nun Resmi Depoları: En basit yöntemdir ancak çok eski Node.js sürümlerini sunar ve genellikle üretim ortamları için önerilmez.
* NodeSource PPA: Daha güncel LTS Node.js sürümlerine erişim sağlar ve üretim ortamları için iyi bir denge sunar. Çoğu kullanıcı için önerilen yöntemdir.
* NVM (Node Version Manager): Geliştiriciler için en esnek çözümdür, birden fazla Node.js sürümünü aynı sistemde yönetmenizi sağlar ve sürüm çakışmalarını önler.
* Kaynaktan Derleme: En son özellikleri veya özel yapılandırmaları isteyen ileri düzey kullanıcılar içindir, ancak en karmaşık ve bakım gerektiren yöntemdir.

Kurulum sonrası adımlar olarak NPM’i güncelleme, global paketler kurma (örneğin PM2) ve basit bir Node.js uygulamasını çalıştırma ve yönetme konularına değindik. Ayrıca, karşılaşabileceğiniz yaygın sorunlara yönelik çözümler de sunduk.

Unutulmamalıdır ki, Ubuntu 14.04 artık uzun süreli destek (LTS) süresini tamamlamış eski bir işletim sistemidir. Yeni projeler için veya mevcut sistemlerinizi güncel tutmak adına daha yeni bir Ubuntu sürümüne (örneğin Ubuntu 18.04 LTS, 20.04 LTS veya 22.04 LTS) yükseltmeniz şiddetle tavsiye edilir. Eski sistemlerde çalışmak, güvenlik açıkları ve güncel yazılım uyumluluğu sorunlarına yol açabilir. Ancak, mevcut bir Ubuntu 14.04 sunucusunda Node.js çalıştırma ihtiyacınız varsa, bu rehber size kapsamlı bir yol haritası sunmuştur. Node.js ile başarılı projeler geliştirmeniz dileğiyle!

Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.