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ı
- AWS konsoluna giriş yapın.
- EC2 hizmetine gidin ve Launch Instance seçeneğini seçin.
- Ubuntu 22.04 LTS AMI’yi seçin.
- Instance type olarak t2.micro (ücretsiz katman) veya ihtiyacınıza uygun bir tipi seçin.
- 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.
- 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.