2 min read

AWS EC2 Üzerinde Ghost Blog Kurulumu ve Nginx ile Yayınlama

AWS EC2 Üzerinde Ghost Blog Kurulumu ve Nginx ile Yayınlama

Ghost, modern ve hızlı bir blog platformudur. Bu rehberde, Ghost blogunu AWS EC2 üzerinde Nginx ile yayınlamayı adım adım öğreneceksiniz.

1. AWS EC2 Sunucusu Oluşturma ve Güvenlik Ayarları

  1. AWS konsoluna giriş yapın.
  2. EC2 hizmetine gidin ve Launch Instance seçeneğini seçin.
  3. Ubuntu 22.04 LTS AMI’yi seçin.
  4. Instance type olarak t2.micro (ücretsiz katman) veya ihtiyacınıza uygun bir tipi seçin.
  5. Güvenlik grubu oluşturun ve aşağıdaki portları açın:
    • SSH (22): Sunucuya bağlanmak için.
    • HTTP (80): Blog sitenizi ziyaret eden kullanıcılar için.
    • HTTPS (443): SSL ile güvenli bağlantı için.
  6. Anahtar çiftinizi (key pair) indirin. Bu dosya ile sunucunuza SSH üzerinden bağlayabilirsiniz.

2. Sunucuya Bağlanma ve Güncellemeler

ssh -i "your-key.pem" ubuntu@your-ec2-ip

Bağlantı kurulduktan sonra sistemi güncelleyin:

sudo apt update && sudo apt upgrade -y

3. Node.js ve Ghost-CLI Kurulumu

Ghost, Node.js üzerinde çalışır. Önce Node.js’i kurun:

curl -sL https://deb.nodesource.com/setup_18.x | sudo -E bash - sudo apt install -y nodejs

Ghost CLI aracını global olarak yükleyin:

sudo npm install -g ghost-cli

4. Ghost Kurulumu

Ghost için bir dizin oluşturun:

sudo mkdir -p /var/www/ghost sudo chown ubuntu:ubuntu /var/www/ghost cd /var/www/ghost

Ghost’u kurun:

ghost install

5. Nginx ile Reverse Proxy Ayarları

Ghost kurulumu Nginx’i otomatik olarak yapılandırır, ancak manuel ayar yapmak isterseniz:

server { listen 80; server_name blog.example.com; location / { proxy_pass http://127.0.0.1:2368; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }

Nginx’i yeniden başlatın:

sudo systemctl restart nginx

6. SSL Sertifikası Kurulumu

Ghost CLI, Let's Encrypt sertifikasını otomatik olarak kurabilir:

ghost setup ssl

Alternatif olarak manuel olarak Certbot ile de kurulabilir:

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

7. Ghost Blogunu Yönetme

Ghost servisini başlatma, durdurma ve yeniden başlatma komutları:

ghost start ghost stop ghost restart

Admin paneline erişim:
https://blog.example.com/ghost
Buradan içerik oluşturabilir, tema yükleyebilir ve blog ayarlarınızı yapabilirsiniz.


8. Özet

Bu adımlarla AWS EC2 üzerinde Nginx ile Ghost blogunuzu güvenli ve hızlı bir şekilde çalışır hale getirdiniz. Artık kendi domain’iniz üzerinden içerik yayınlayabilir, SSL ile güvenli bir blog deneyimi sağlayabilirsiniz.