Bu yazıda nginx kurulumu, passenger kurulumu, rvm kurulumu ve rails deploy edilmesi konularını öğreneceksiniz.

Ortamların Hazırlanması

1. Şu komutlar ile RVM paketini kuruyoruz:

2. X.X.X olan yerleri değiştirerek ruby’nin istediğiniz sürümünü kurabilirsiniz:

3.Bundler’ı yükleyin

4. Node JS’i yükleyin

5. Her şey sorunsuz ise passenger ve nginx’i kurabiliriz

6. Şu komutlar ile  Passenger + Nginx’i kurun

7. Passenger modülünü aktifleştirmemiz gerek. Şu dosyayı bulun /etc/nginx/nginx.conf . İstediğiniz bir metin editörü ile dosyayı açın. (Ben vim kullanacağım)

Şu satırı bulup: # include /etc/nginx/passenger.conf; başındaki # karakterini kaldırarak yorum satırı olmaktan kurtarın. Şöyle görünmeli:

 Eğer  nginx.conf içinde bu satırı görmüyorsanız, http bloğu içine kendiniz ekleyin.

Nginx’i yeniden başlatın

7. Aşağıdaki komutu çalıştırdığınızda altındaki yanıtları alıyorsanız şimdiye kadar her şey yolunda demektir.

Update & upgrade

Uygulamanın Deploy Edilmesi

1. Sunucunuza ssh ile bağlanın.

2. Uygulama için bir kullanıcı oluşturacağız. Oluşturacağınız kullanıcıya uygulamanızla aynı ismi vermeniz daha iyi olacaktır. Ben demouser diyeceğim

Aşağıdaki komutu yazarak demouser kullanıcınıza sudo ayrıcalıklarını tanımlayın.

Şu satırı bularak root ALL=(ALL:ALL) ALL altına aşağıdaki satırı ekleyin.

Şu komutu çalıştırarak demouser kullanıcsı olarak oturumunuza devam edin:

Uygulamanızın kodunu demouser kullanıcınızın home dizinine indirin. (Bu dizin tercihe kalmış. Ben kullanıcıların home dizinlerini tercih ediyorum. Siz /var/www/myapp gibi bir dizini de tercih edebilirsiniz.)

 Eğer git kurulu değilse şu komut ile kurabilirsiniz: sudo apt-get install -y git

3. Uygulama gerekliliklerini kurun

4.  database.yml ve secrets.yml dosyalarını yapılandırmamız gerek. Öncelikle veritabanı:

sqlite için şu şekilde görünmeli:

secret key oluşturun:

Oluşturulan secret key’i kopyalayın. secrets.yml dosyasını açın

Şu satırı bulun ve keyi yapıştırın:

Şu komutları çalıştırarak assetleri compile edip database de migrate edin 🙂 :

Nginx Yapılandırması

exit yazarak root kullanıcınıza geri dönün. Daha sonra aşağıdaki komutu çalıştırarak yapılandırma dosyanızı belirtilen yola oluşturun. Ve içeriğini aşağıdaki gibi doldurun

myapp.conf yerine kendi uygulamanızın ismini yazmayı unutmayın

Uygulamanızın tam dizinini bulmak için pwd komutunu kullanabilirsiniz.

Ruby yolunu bulmak için de which ruby komutunu kullanabilirsiniz.

Şimdi şu dizine (/etc/nginx/sites-enabled) yapılandırma dosyamızı link olarak ekleyelim

Tamamlandığında Nginx’i yeniden başlatabilirsiniz: