Kampanyalar

Node.js / Next.js uygulamasını bulut sunucuda yayına alma

Uygulamayı PM2 ile süreç olarak çalıştırıp önüne Nginx koyuyor, ücretsiz SSL ile HTTPS'e geçiyoruz.

Süre: 20 dk Seviye: Orta Sistem: Ubuntu 24.04 · x86 / ARM64

Gerekenler

  • REGTR bulut sunucu (Ubuntu 24.04)
  • Alan adı ve sunucu IP'sine giden A kaydı
  • sudo yetkili kullanıcı

Adımlar

  1. 1Node.js 22 LTS kur

    NodeSource deposundan güncel LTS sürümünü kur.

    curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
    sudo apt install -y nodejs git
    node -v
  2. 2Uygulamayı indir ve derle

    Deponu klonla, bağımlılıkları kur ve üretim derlemesini al.

    git clone https://github.com/KULLANICI/PROJE.git ~/web
    cd ~/web
    npm ci
    npm run build
  3. 3PM2 ile çalıştır

    Uygulama çökse bile yeniden başlar; sunucu açılışında otomatik çalışır. pm2 startup komutunun yazdırdığı satırı çalıştırmayı unutma.

    sudo npm install -g pm2
    pm2 start npm --name web -- start
    pm2 startup systemd
    pm2 save
  4. 4Nginx ters vekil

    Nginx 80 portundan gelen istekleri uygulamanın 3000 portuna aktarır.

    sudo apt install -y nginx
    sudo tee /etc/nginx/sites-available/web >/dev/null <<'EOF'
    server {
        listen 80;
        server_name example.com www.example.com;
        location / {
            proxy_pass http://127.0.0.1:3000;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }
    }
    EOF
    sudo ln -s /etc/nginx/sites-available/web /etc/nginx/sites-enabled/
    sudo nginx -t && sudo systemctl reload nginx
  5. 5Ücretsiz SSL

    Certbot sertifikayı alır, Nginx'i HTTPS için ayarlar ve otomatik yeniler.

    sudo apt install -y certbot python3-certbot-nginx
    sudo certbot --nginx -d example.com -d www.example.com

İpuçları

  • Uygulamanın 3000 portunu dışarı açma; yalnız Nginx üzerinden erişilsin (UFW'de 3000 kapalı kalmalı).
  • Ortam değişkenlerini .env dosyasında tut ve depoya ekleme.
  • Next.js'te "output: standalone" ile daha küçük ve hızlı başlayan bir derleme alabilirsin.

Sık sorulan sorular

Hangi plan yeterli?

Tek bir Next.js uygulaması için 2 vCPU / 4 GB (ARM 2) yeterlidir. Derleme sunucuda yapılıyorsa ve trafik yüksekse 4 vCPU / 8 GB önerilir.

Docker ile mi, PM2 ile mi?

Tek uygulama için PM2 daha basittir. Birden çok servis veya veritabanı varsa Docker Compose ya da Coolify daha düzenli olur.

Güncelleme: 2026-10-23

Satış ve Desteğe Ulaşın

Satın almadan önce sorunuz mu var ya da mevcut hesabınızla ilgili yardım mı gerekiyor? Bizi arayın veya e-posta gönderin.

Bülten Ürün Haberleri E-postanızda

Bülten aboneliğiniz alındı.