Bir süredir Pluwy‘nin geliştirmesi için Mac OS X üzerinde Ruby on Rails, Nginx, MongoDB kullanmaya başladım. Neden ruby kullandığımı ayrıntılı farklı bir yazıda anlatacağım. Ancak fikir oluşturması amacıyla “RubyConf X Keynote“u izleyebilirsiniz.
Mac OS X üzerinde Ruby yerleşik olarak geliyor. Dolayısıyla ruby haricindeki gereksinimleri kurmanız ve yapılandırmanız gerekiyor.
Öncelikle rails kurulumu için(terminal üzerinden);
[bash]gem install rails –include-dependencies[/bash]
Gem bu işletimi yürütürken epey bekleyebilirsiniz, şimdiden uyarayım
Nginx üzerinde ruby on rails framework’ü çalıştırmak için passenger kullanmamız gerekiyor. Eğer nginx yerine apache kullanıyorsanız mod_passenger modülünü kullanabilirsiniz.
[bash]gem install passenger[/bash]
Passenger kurulumundan sonra nginx kurulumu için yine terminal üzerinde;
[bash]sudo passenger-install-nginx-module[/bash] komutunu uyguluyoruz.
Çalıştırdığınız bu komut, 1-2 aşamada bazı kütüphanelerin ve yazılımların kontrolünü yapacaktır. Kontrol bittikten sonra nginx’i kurma şekliniz için 2 seçenekli bir soru sorulacak. Bu kısımda nginx’i otomatik kurmak(derlemek) için 1 yazarak devam ediyoruz. Eğer nginx’i kendiniz kurduysanız(daha önce) 2 yazarak nginx’in path’ini girmeniz gerekiyor.
Biz 1. seçenek ile devam ediyoruz.
İnternet bağlantınız ve bilgisayarınız yoğunluğuna göre bu işlem 5-10 dakika arası sürebilir. Kurulum tamamlandıktan sonra, nginx’e ait konfigürasyon dosyalarını düzenleceğiz.
[bash]sudo vim /opt/nginx/conf/nginx.conf [/bash] komutuyla conf dosyasını açıp şu satırları eklemeniz gerekiyor.
[bash]
server
{
listen 8080;
server_name halid.local;
root /Users/halidaltuner/Sites/halid/public;
charset utf-8;
passenger_enabled on;
}
[/bash]
Bu kısımda dikkat etmeniz gereken husus, mevcut server{} tanımlamasının olup olmadığı. Eğer böyle bir tanımlama varsa değiştirin.
Ben yerleşik olarak 80 portu üzerinde yerleşik bir web sunucusu kullandığım için 8080 portunu dinlemeye ayarladım. Dilediğiniz farklı bir port’u bu işlem için tahsis edebilirsiniz.
server_name tanımlaması, tarayıcı üzerinden uygulamanıza erişimde kullanacağınız lokal isim.
Not: Bu isimle eklediğiniz tanımlamayı /etc/hosts dosyanıza 127.0.0.1 halid.local şeklinde eklemeniz gerekiyor.
root tanımlaması rails uygulamanızın bulunduğu public klasörüne yapılmalıdır. Kendi isteğinize göre değiştirebilirsiniz.
charset tanımlamasıyla uygulama içerisinde kullanacağınız karakter setini tanımlamanız gerekiyor.
passenger_enabled parametresiyle ise uygulamanızın passenger desteğiyle deploy edilmesi gerektiğini tanımlıyoruz.
Bu şekilde dosyayı kaydedin.
Son olarak mongoDB kurulumu için MongoDB Downloads sayfasından stable olan son sürümü indirip, kuruyoruz.
[bash]
curl -O http://fastdl.mongodb.org/osx/mongodb-osx-x86_64-1.6.5.tgz
tar xzf mongodb-osx-x86_64-1.6.5.tgz
sudo mv mongodb-osx-x86_64-1.6.5 /usr/local/mongodb
sudo mkdir /usr/local/mongodb_data /var/log/mongodb
sudo chown -R root /usr/local/mongodb
[/bash]
Bu işlemden sonra conf. dosyasını oluşturuyoruz.
[bash]
sudo vi /usr/local/mongodb/mongod.conf
[/bash]
Dosya içerisine şu satırları ekleyip, kaydediyoruz.
[bash]
dbpath = /usr/local/mongodb_data
bind_ip = 127.0.0.1
[/bash]
MongoDB’nin otomatik olarak başlaması için daemon oluşturuyoruz.
[bash]
sudo vim /Library/LaunchDaemons/org.mongodb.mongod.plist
[/bash]
Oluşturduğumuz dosya içerisine şu adreste bulunan satırları ekleyip, kaydediyoruz.
http://pastebin.com/k4K5zjbK
Ayarların aktif olması için şu komutu çalıştırıyoruz;
[bash]sudo launchctl load /Library/LaunchDaemons/org.mongodb.mongod.plist[/bash]
MongoDB’nin çalışıp çalışmadığını öğrenmek için; http://localhost:28017 adresini ziyaret edebilirsiniz.
Örnek rails projesini oluşturmak için ilgili path içerisinde;
[bash]rails halid[/bash] komutunu çalıştırmanız gerekiyor.
Tüm işlemlerin doğru olduğuna eminseniz, uygulamaya tarayıcı üzerinden erişmeye çalıştığınızda şu şekilde bir ekran görüntüsüyle karşılaşmalısınız.

Bir sonraki makalede rails – mongodb bağlantısı hakkında birşeyler karalayacağım.
Görüşmek üzere,
Kaynaklar:
http://shiftcommathree.com/articles/how-to-install-mongodb-on-os-x
http://developer.apple.com/tools/rubyonrails.html
Share on Facebook