Ghost iki farklı şekilde kurulabilir. Ubuntu 16.04/18.04 yüklü sunucuda bu makalede anlatıldığı gibi veya Docker yüklü sunucuda kurulumu yapılabilir.
Ghost’tu localhostta da kurabilirsiniz.
Ghost Digitalocean markette tek tık ile kurulabilmektedir. Eğer FlarumTR referansı ile BU linkten Digitalocean’a üye olup sunucu alırsanız 100 USD kredi kazanırsınız.
Yukarıda bahsettiğim Docker ile localhosta ve sunucuya kurulumlarını ayrı ayrı konularda anlatacağım.
Biz şimdi Ubuntu 16.04 / 18.04 yüklü sunucuda Ghost Blog Kurulumu yapacağız.
Ghost Sunucu Gereksinimleri
- Ubuntu 16.04 veya Ubuntu 18.04
- NGINX (SSL için minimum 1.9.5)
- Desteklenen NodeJS sürümü
- MySQL 5.5, 5.6 veya 5.7 ( > = 8.0 olmamalı )
- Systemd
- En az 1 GB belleğe sahip bir sunucu
- Kayıtlı bir alan adı
Kuruluma başlamadan önce IP adresine yönlendirilen bir A kaydının girilmiş olması ve DNS tam olarak çözümlenmiş olması gerekmektedir. Kurulum sırasında SSL’nin doğru bir şekilde kurulması açısından bu önemlidir. Yoksa hata alırsınız.
Sunucu Kurulumu
https://flarumtr.com/blog/2035-ubuntu-sifir-sunucu-ilk-kurulumu
Yukarıdaki makalede anlatıldığı gibi Ubuntu ilk sunucu kurulumu adımlarını tamamlayın. Bu adımda dikkat edilmesi gereken husus yeni kullanıcıya ghost adını vermeyin.
Nginx Kurulumu
Ghost, bir NGINX sunucusu kullanır ve SSL yapılandırması, NGINX 1.9.5 veya üstünü gerektirir.
NGINX yüklemek için:
sudo apt-get install nginx
Güvenlik duvarında Nginx’ izin vermek için:
sudo ufw allow 'Nginx Full'
MySQL Server Kurulumu
Veri tabanı olarak MySQL server kuracağız.
MySQL kurulumu için:
sudo apt-get install mysql-server
Sunucu Ubuntu 18.04 ise
Ubuntu 18.04 çalıştırıyorsanız, MySQL’in uyumlu olmasını sağlamak için bir şifre gerekir. Şimdi Root kullanıcısına geri dönün ve aşağıdaki adımları tamamlayın. Bir şifre belirlemek için şunu çalıştırın:
sudo mysql
Şimdi kullanıcınızı bu şifre ile güncelleyin “Şifre” yi şifrenizle değiştirin, Tırnak işaretleri arasına yazın.
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
MySQL’den çıkmak için:
quit
Yeni oluşturduğunuz kullanıcı ile devam edin.
su - <kullanici>
NodeJS Kurulumu
Ghost tarafından desteklenen bir NodeJS sürümü kurmnız gerekmektedir. Ben Nodejs 12.x sürümünü kuracağım.
NodeJS 12 sürümünü indirmek için:
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash
Node.js kurmak için:
sudo apt-get install -y nodejs
Ghost-CLI Kurulumu
Ghost-CLI , Ghost’u hızlı ve kolay bir şekilde kurmanıza ve kullanım için yapılandırmanıza yardımcı olan bir komut satırı aracıdır.
sudo npm install ghost-cli@latest -g
Ghost Kurulumu
Ghost sitesinin yaşayacağı klasörü oluşturup gerekli izinleri ayarlayacağız.
Bu örnekte ben sitenin klasörlerinin olacağı klasöre ‘ghost’ adını verdim. Sen istediğini kullanabilirsin.
sudo mkdir -p /var/www/ghost
<user> yerine bu dizinin sahibi olacak kullanıcınızın adını yazın
sudo chown <user>:<user> /var/www/ghost
Klasör izinlerini ayarlayın
sudo chmod 775 /var/www/ghost
Oluşturulan klasörün içine girin
cd /var/www/ghost
Ghost Yüklemeyi Çalıştırma
Artık tüm gereksinimler karşılandığına göre ghost kurulumunu başlatabiliriz.
ghost install
##Ghot Kurulumu Sırasında Sorulan Sorular
Blog URL
Blog URL’nizi yazın. Eğer URL https:// ile başlarsa Ghost sizin için ücretsiz SSL kuracaktır.
MySQL hostname
localhost önerisine ENTER ile kabul edin.
MySQL username / password
Önceden bir veri tabanı oluşturduysanız o kullanıcı adını girin. Eğer oluşturmadıysananız root olarak girin.
Ghost database name
Eğer önceden oluşturduysanız veri tabanı adınızı girin. Yoksa Ghost-CLI sizin için bir veri tabanı oluşturacaktır.
Set up a ghost MySQL user? (Recommended)
Eğer veri tabanı kullanıcısı olarak root girdiyseniz Ghost-CLI yalnızca yeni Ghost veritabanınıza erişebilen / düzenleyebilen ve başka hiçbir şey yapmayan özel bir MySQL kullanıcısı oluşturur.
Set up NGINX? (Recommended)
Bunu ENTER ile kabul edin. Ghost-cli Nginx otomatik yapılandırıp siteyi yayınlayacaktır.
Set up SSL? (Recommended)
Site URL’si başına https:// girdiyseniz Ghost-CLI Let’s Encrypt’i kuracaktır.
Enter your email
SSL için bir mail adresi girin.
Set up systemd? (Recommended)
yes olarak cevaplayalım.
Start Ghost?
yes ile cevaplayıp sistremin çalışmaya başlamasını sağlayalım.