Takip et

Ubuntu 16.04 Üzerine RVM ile Ruby on Rails Kurulumu: Adım Adım Kapsamlı Rehber

Ubuntu 16.04 Üzerine RVM ile Ruby on Rails Kurulumu: Adım Adım Kapsamlı Rehber Giriş: Ruby on Rails, RVM ve Ubuntu 16.04 Ruby on Rails (Rails),

Ubuntu 16.04 Üzerine RVM ile Ruby on Rails Kurulumu: Adım Adım Kapsamlı Rehber

Giriş: Ruby on Rails, RVM ve Ubuntu 16.04

Ruby on Rails (Rails), web uygulamaları geliştirmek için kullanılan, açık kaynaklı, sunucu tarafı bir web uygulama çerçevesidir. Ruby programlama dili ile yazılmış olup, “convention over configuration” (yapılandırma yerine kural) ve “don’t repeat yourself” (kendini tekrar etme) prensiplerini benimser. Bu prensipler, geliştiricilerin hızlı bir şekilde web uygulamaları oluşturmasını ve daha az kod yazarak daha çok iş yapmasını sağlar. Rails, Model-View-Controller (MVC) mimarisini kullanır ve veritabanı entegrasyonu, web servisleri, ve bir dizi kullanışlı özellik ile birlikte gelir. Özellikle prototipleme ve hızlı uygulama geliştirmede oldukça popülerdir.

RVM (Ruby Version Manager), aynı sistem üzerinde birden fazla Ruby sürümünü kolayca kurmanıza, yönetmenize ve aralarında geçiş yapmanıza olanak tanıyan bir komut satırı aracıdır. Geliştiricilerin farklı projeler için farklı Ruby veya Rails sürümlerine ihtiyaç duyması yaygın bir durumdur. RVM, bu senaryoda büyük bir kolaylık sağlar ve sistem genelindeki Ruby kurulumunu bozmadan izole geliştirme ortamları oluşturmanıza yardımcı olur. Her projenin kendi Ruby ve gemset (kurulu gem’lerin koleksiyonu) sürümüne sahip olmasını sağlayarak bağımlılık çakışmalarını önler.

Ubuntu 16.04 LTS (Xenial Xerus), Nisan 2016’da piyasaya sürülen ve uzun süreli destek (Long Term Support) sağlayan popüler bir Linux dağıtımıdır. Kararlılığı ve geniş yazılım deposu ile bilinir. Bu rehber, Ubuntu 16.04’ü hedef alsa da, adımların çoğu daha yeni Ubuntu sürümlerinde de benzer şekilde uygulanabilir. Ancak, sistemin yaşına bağlı olarak bazı bağımlılıkların veya önerilen Ruby/Rails sürümlerinin farklılık gösterebileceğini unutmamak önemlidir. Bu makale, özellikle Ubuntu 16.04 kullanıcıları için kapsamlı ve adım adım bir kurulum süreci sunmayı amaçlamaktadır.

Bu kapsamlı rehberde, Ubuntu 16.04 işletim sistemi üzerine RVM kullanarak Ruby’yi ve ardından Ruby on Rails çerçevesini nasıl kuracağınızı detaylı bir şekilde öğreneceksiniz. Ayrıca, modern Rails uygulamaları için gerekli olan Node.js ve bir veritabanı (PostgreSQL) kurulumunu da ele alacağız. Amacımız, başarılı bir geliştirme ortamı kurmanız için gerekli tüm bilgileri ve komutları sağlamaktır.

Ön Hazırlıklar: Sisteminizi Güncelleme ve Gerekli Bağımlılıkları Kurma

Ruby on Rails ve RVM kurulumuna başlamadan önce, sisteminizin güncel olduğundan ve gerekli temel yazılım bağımlılıklarının kurulu olduğundan emin olmalıyız. Bu adımlar, olası hataları önlemek ve sorunsuz bir kurulum süreci sağlamak için kritik öneme sahiptir.

Sistem Paketlerini Güncelleme

İlk olarak, Ubuntu paket listenizi güncellemeli ve yüklü paketlerinizi en son sürümlerine yükseltmelisiniz. Bu işlem, güvenlik güncellemelerini almanızı ve en yeni yazılım sürümlerine erişmenizi sağlar. Terminali açın (Ctrl+Alt+T) ve aşağıdaki komutları çalıştırın:

sudo apt-get update
sudo apt-get upgrade -y

sudo apt-get update komutu, yerel paket indeksinizi güncellerken, sudo apt-get upgrade -y komutu, kurulu tüm paketleri onay gerektirmeden (-y bayrağı sayesinde) en son sürümlerine yükseltir. Bu işlem biraz zaman alabilir.

Gerekli Geliştirme Bağımlılıklarını Kurma

RVM ve Ruby’nin doğru bir şekilde derlenebilmesi ve çalışabilmesi için çeşitli geliştirme araçlarına ve kütüphanelerine ihtiyaç duyulur. Bu bağımlılıklar arasında derleyiciler, kütüphane başlık dosyaları ve sıkıştırma araçları bulunur. Aşağıdaki komut, bu temel bağımlılıkların çoğunu kuracaktır:

sudo apt-get install -y git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev

Bu komutta yer alan önemli paketler şunlardır:
* git-core: Git sürüm kontrol sistemi. Ruby on Rails projeleri genellikle Git ile yönetilir.
* curl: URL sözdizimi kullanan dosyaları ve verileri aktarmak için bir komut satırı aracıdır. RVM kurulumu için gereklidir.
* zlib1g-dev: Zlib sıkıştırma kütüphanesinin geliştirme dosyaları.
* build-essential: GNU derleyici koleksiyonu (GCC) ve diğer temel geliştirme araçlarını içerir. Ruby’nin kaynak koddan derlenmesi için hayati öneme sahiptir.
* libssl-dev: OpenSSL kütüphanesinin geliştirme dosyaları. Güvenli iletişim (HTTPS) için gereklidir.
* libreadline-dev: GNU Readline kütüphanesinin geliştirme dosyaları. Ruby etkileşimli kabuğu (IRB) gibi araçlar için kullanılır.
* libyaml-dev: YAML ayrıştırma kütüphanesinin geliştirme dosyaları.
* libsqlite3-dev ve sqlite3: SQLite veritabanının geliştirme dosyaları ve komut satırı aracı. Rails varsayılan olarak SQLite kullanır.
* libxml2-dev ve libxslt1-dev: XML ve XSLT işleme kütüphanelerinin geliştirme dosyaları. Bazı gem’ler (örneğin Nokogiri) bunları gerektirir.
* libcurl4-openssl-dev: cURL kütüphanesinin OpenSSL destekli geliştirme dosyaları.
* python-software-properties: Geliştiricilerin PPA (Personal Package Archive) depolarını kolayca eklemesine olanak tanır. Node.js kurulumu için faydalı olabilir.
* libffi-dev: Foreign Function Interface kütüphanesinin geliştirme dosyaları. Bazı gem’ler için gereklidir.

Bu adımları tamamladıktan sonra sisteminiz, RVM ve Ruby kurulumu için gerekli tüm temel bileşenlere sahip olacaktır.

RVM Kurulumu: Ruby Sürümlerini Yönetmek İçin Anahtar

RVM, aynı makinede birden fazla Ruby sürümünü ve her Ruby sürümü için ayrı gemset’leri yönetmenizi sağlayan güçlü bir araçtır. Bu, farklı projeler için farklı Ruby veya Rails sürümlerine ihtiyaç duyan geliştiriciler için vazgeçilmezdir.

RVM Nedir ve Neden Kullanılır?

RVM, Ruby geliştirme ortamınızı izole etmenizi ve farklı Ruby projeleri arasında kolayca geçiş yapmanızı sağlar. Örneğin, bir projeniz Ruby 2.3.x ile çalışırken, başka bir projeniz Ruby 2.7.x gerektirebilir. RVM olmadan bu tür senaryoları yönetmek oldukça zorlu ve hata eğilimli olabilir. RVM, her Ruby sürümü için ayrı bir “gemset” (kurulu gem’lerin koleksiyonu) oluşturarak, gem bağımlılık çakışmalarını da önler. Bu, sistem genelindeki Ruby kurulumunu kirletmeden temiz ve yönetilebilir bir geliştirme ortamı sağlar.

RVM GPG Anahtarını Ekleme

RVM’i kurmadan önce, RVM yükleyicisinin güvenliğini doğrulamak için GPG anahtarını sisteminize eklemeniz gerekir. Bu, indirdiğiniz paketin gerçekten RVM ekibi tarafından sağlandığından emin olmanızı sağlar.

gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

Bu komut, RVM’in GPG anahtarını GPG anahtar sunucusundan alır ve yerel GPG anahtar halkasına ekler.

RVM’i İndirme ve Kurma

GPG anahtarını ekledikten sonra, RVM kurulum komutunu çalıştırabilirsiniz. Resmi RVM web sitesinden (https://rvm.io/) gelen kurulum betiğini curl ile indirip doğrudan bash ile çalıştıracağız. Bu, RVM’in en son kararlı sürümünü kuracaktır.

\curl -sSL https://get.rvm.io | bash -s stable --autolibs=enable

Bu komutta:
* \curl -sSL https://get.rvm.io: RVM kurulum betiğini sessizce (-s), konum yönlendirmelerini takip ederek (-L) ve güvenli bir şekilde (-S) indirir.
* | bash -s stable: İndirilen betiği bash ile çalıştırır ve RVM’in kararlı sürümünü kurmasını söyler.
* --autolibs=enable: RVM’in Ruby’yi derlemek için gerekli olabilecek ek sistem kütüphanelerini otomatik olarak kurmaya çalışmasını sağlar. Bu, kurulum sürecini basitleştirir.

Kurulum tamamlandıktan sonra, RVM’in düzgün çalışabilmesi için terminal oturumunuzu yeniden yüklemeniz veya kapatıp açmanız gerekebilir. Terminali kapatıp açmak en garantili yoldur. Alternatif olarak, aşağıdaki komutla RVM ortam değişkenlerini mevcut oturumunuza yükleyebilirsiniz:

source ~/.rvm/scripts/rvm

Bu komutu, her yeni terminal oturumu açtığınızda çalıştırmanız gerekmez; RVM kurulum betiği genellikle bu satırı .bashrc veya .profile dosyanıza ekler. Ancak, ilk kurulumdan hemen sonra source etmek, RVM’i hemen kullanabilmenizi sağlar.

RVM Kurulumunu Doğrulama

RVM’in doğru bir şekilde yüklendiğini ve erişilebilir olduğunu doğrulamak için aşağıdaki komutu çalıştırın:

rvm -v

Bu komut, kurulu RVM sürümünü göstermelidir. Eğer bir hata alırsanız, source ~/.rvm/scripts/rvm komutunu çalıştırmayı veya terminali yeniden başlatmayı deneyin.

Ayrıca, RVM’in sisteminizdeki path’e doğru bir şekilde eklendiğinden emin olmak için type rvm | head -1 komutunu çalıştırabilirsiniz. Bu komut rvm is a function çıktısını vermelidir.

Ruby Kurulumu (RVM ile): Seçtiğiniz Ruby Sürümünü Yükleme

RVM kurulduktan sonra, artık istediğiniz Ruby sürümünü kolayca kurabilir ve yönetebilirsiniz. Ubuntu 16.04 için genellikle Ruby 2.3.x veya 2.4.x gibi sürümler yaygın olarak kullanılırdı, ancak RVM sayesinde daha yeni sürümleri de kurabilirsiniz. Rails uygulamaları genellikle belirli bir Ruby sürümünü gerektirdiğinden, projenizin gereksinimlerine uygun bir sürüm seçmek önemlidir.

Kullanılabilir Ruby Sürümlerini Listeleme

RVM’in kurabileceği tüm Ruby sürümlerini görmek için aşağıdaki komutu kullanın:

rvm list known

Bu komut, çeşitli Ruby sürümlerinin (MRI, JRuby, Rubinius vb.) ve bunların alt sürümlerinin uzun bir listesini döndürecektir. Bu listeden kurmak istediğiniz Ruby sürümünü seçebilirsiniz. Örneğin, ruby-2.4.10 veya ruby-2.3.8 gibi sürümler görebilirsiniz.

Belirli Bir Ruby Sürümünü Kurma

Bu rehberde, örnek olarak ruby-2.4.10 sürümünü kuracağız. Siz kendi projenizin gerektirdiği veya tercih ettiğiniz başka bir sürümü seçebilirsiniz.

rvm install ruby-2.4.10

Bu komut, seçtiğiniz Ruby sürümünü indirir, derler ve RVM ortamınıza kurar. Bu işlem, sisteminizin performansına ve internet bağlantınızın hızına bağlı olarak biraz zaman alabilir. RVM, Ruby’yi derlerken gerekli olan ek sistem bağımlılıklarını otomatik olarak kurmaya çalışacaktır (eğer --autolibs=enable ile RVM’i kurduysanız).

Varsayılan Ruby Sürümünü Ayarlama

Birden fazla Ruby sürümü kurduysanız, RVM’e hangi sürümün varsayılan olarak kullanılacağını söylemeniz gerekir. Bu, yeni bir terminal oturumu açtığınızda otomatik olarak etkinleştirilecek sürümdür.

rvm use ruby-2.4.10 --default

Bu komut, ruby-2.4.10 sürümünü mevcut terminal oturumunuz için etkinleştirir ve aynı zamanda bu sürümü gelecekteki tüm yeni terminal oturumları için varsayılan olarak ayarlar.

Eğer sadece mevcut oturum için kullanmak isterseniz --default bayrağını kullanmadan rvm use ruby-2.4.10 komutunu çalıştırabilirsiniz.

Ruby Kurulumunu Doğrulama

Ruby’nin doğru bir şekilde kurulduğunu ve etkinleştirildiğini doğrulamak için aşağıdaki komutları çalıştırın:

ruby -v
gem -v

ruby -v komutu, kurulu Ruby sürümünü (örneğin ruby 2.4.10p0 (2020-09-08 revision 75783) [x86_64-linux]) göstermelidir. gem -v komutu ise RubyGems’in sürümünü gösterecektir. RubyGems, Ruby kütüphaneleri (gem’ler) için standart bir paket yöneticisidir.

Gemset Oluşturma (İsteğe Bağlı ama İyi Pratik)

RVM, her Ruby sürümü için ayrı gemset’ler oluşturmanıza olanak tanır. Bir gemset, belirli bir Ruby sürümü altında kurulu gem’lerin izole bir koleksiyonudur. Bu, farklı projelerin farklı gem bağımlılıklarına sahip olabileceği durumlarda çok faydalıdır. Örneğin, bir projeniz Rails 5.2.x kullanırken, başka bir projeniz Rails 6.0.x kullanabilir. Her ikisinin de farklı gem sürümlerine ihtiyacı olabilir.

Yeni bir proje için bir gemset oluşturmak için:

rvm gemset create my_rails_app
rvm use ruby-2.4.10@my_rails_app --default

Bu komutlar my_rails_app adında bir gemset oluşturur ve ruby-2.4.10 sürümü altında bu gemset’i varsayılan olarak ayarlar. Artık bu gemset içinde kurduğunuz tüm gem’ler, diğer gemset’lerden izole olacaktır. Bu adımı atlayıp doğrudan varsayılan gemset’e de kurabilirsiniz, ancak profesyonel geliştirme için gemset kullanımı şiddetle tavsiye edilir.

Rails Kurulumu: Web Uygulama Çerçevesini Yükleme

Ruby ve RVM kurulumunu tamamladığımıza göre, artık Ruby on Rails çerçevesini kurmaya hazırız. Rails, RubyGems aracılığıyla bir gem olarak dağıtılır.

Rails Gem’ini Kurma

Rails’i kurmak için gem install komutunu kullanacağız. Genellikle, belirli bir Rails sürümünü kurmak iyi bir pratiktir, çünkü projeler genellikle belirli bir Rails sürümüne bağımlıdır. Bu rehber için, Ubuntu 16.04 ile uyumlu olabilecek, örneğin Rails 5.2.x gibi bir sürümü kuracağız. En son kararlı sürümü kurmak isterseniz, sürüm numarasını belirtmeyebilirsiniz, ancak bu eski işletim sistemlerinde bazen bağımlılık sorunlarına yol açabilir.

gem install rails -v 5.2.8

Bu komut, Rails’in 5.2.8 sürümünü ve onun tüm bağımlılıklarını kuracaktır. Kurulum biraz zaman alabilir, çünkü Rails birçok başka gem’e bağımlıdır ve bunların hepsi indirilir ve kurulur.

Eğer en son kararlı Rails sürümünü kurmak isterseniz (dikkatli olun, bu 16.04 için çok yeni olabilir ve ek bağımlılık sorunları yaratabilir):

gem install rails

Kurulum sırasında nokogiri gibi bazı gem’ler derleme gerektirebilir ve bu noktada libxml2-dev ve libxslt1-dev gibi daha önce kurduğumuz geliştirme kütüphaneleri işe yarar. Eğer bu adımda herhangi bir derleme hatası alırsanız, “Ön Hazırlıklar” bölümündeki tüm bağımlılıkların doğru bir şekilde kurulu olduğundan emin olun.

Rails Kurulumunu Doğrulama

Rails’in doğru bir şekilde kurulduğunu doğrulamak için aşağıdaki komutu çalıştırın:

rails -v

Bu komut, kurulu Rails sürümünü (örneğin Rails 5.2.8) göstermelidir. Eğer bu komut bir hata verirse, Rails’in PATH’inizde olmadığından veya kurulumun başarısız olduğundan emin olmak için RVM ortamınızı kontrol edin (rvm use ruby-2.4.10@my_rails_app veya uygun gemset’inizi tekrar etkinleştirin).

Node.js Kurulumu: Rails Uygulamaları İçin Gerekli Bir Bileşen

Modern Ruby on Rails uygulamaları, JavaScript varlıklarını derlemek ve yönetmek için genellikle Node.js ve npm (Node Package Manager) kullanır. Bu, özellikle Webpacker, Stimulus, React, Vue.js gibi frontend araçları ve kütüphaneleri ile çalışırken gereklidir. Ubuntu 16.04 depolarındaki Node.js sürümü genellikle eski olduğundan, NodeSource’un resmi deposunu kullanmak daha güncel bir sürüm elde etmenin en iyi yoludur.

Node.js Nedir ve Neden Gerekli?

Node.js, sunucu tarafında JavaScript çalıştırmak için bir çalışma zamanı ortamıdır. Rails uygulamaları, frontend varlıklarını (CSS, JavaScript) sıkıştırmak, birleştirmek ve derlemek için genellikle Node.js tabanlı araçlar (örneğin Webpacker) kullanır. npm ise Node.js paket yöneticisidir ve binlerce JavaScript kütüphanesini yönetmek için kullanılır.

NodeSource Deposunu Ekleme

NodeSource, Node.js’nin güncel sürümlerini Ubuntu gibi dağıtımlar için sağlayan resmi bir kaynaktır. Node.js’nin belirli bir sürümünü (örneğin Node.js 10.x LTS veya 12.x LTS) kurmak için NodeSource betiğini kullanacağız. Ubuntu 16.04 için Node.js 10.x veya 12.x LTS sürümleri daha uygun olabilir. Bu örnekte Node.js 12.x LTS’yi kullanacağız.

curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -

Bu komut, NodeSource deposunu sisteminizin apt kaynak listesine ekleyecektir. setup_12.x yerine setup_10.x veya setup_14.x gibi başka bir sürüm de belirtebilirsiniz.

Node.js ve npm’i Kurma

Depo eklendikten sonra, Node.js ve npm’i aşağıdaki komutla kurabilirsiniz:

sudo apt-get install -y nodejs

Bu komut hem Node.js çalışma zamanını hem de npm paket yöneticisini kuracaktır.

Node.js ve npm Kurulumunu Doğrulama

Kurulumun başarılı olduğunu doğrulamak için aşağıdaki komutları çalıştırın:

node -v
npm -v

Bu komutlar, kurulu Node.js ve npm sürümlerini göstermelidir (örneğin v12.x.x ve 6.x.x). Eğer bu komutlar hata verirse, kurulum adımlarını tekrar kontrol edin.

Veritabanı Kurulumu: Rails Uygulamaları İçin Gerekli

Rails uygulamaları genellikle verileri depolamak için bir ilişkisel veritabanına ihtiyaç duyar. PostgreSQL, Rails geliştiricileri arasında popüler bir seçimdir, ancak MySQL de yaygın olarak kullanılır. Bu bölümde, PostgreSQL’i nasıl kuracağınızı ve yapılandıracağınızı anlatacağız. MySQL’i tercih ediyorsanız, alternatif adımları da kısaca belirteceğiz.

PostgreSQL Kurulumu (Önerilen)

PostgreSQL, güçlü, açık kaynaklı bir ilişkisel veritabanı sistemidir. Rails ile çok iyi entegre olur ve birçok gelişmiş özelliğe sahiptir.

PostgreSQL Sunucusunu Kurma

PostgreSQL sunucusunu ve gerekli istemci kütüphanelerini kurmak için aşağıdaki komutu kullanın:

sudo apt-get install -y postgresql postgresql-contrib libpq-dev

* postgresql: PostgreSQL veritabanı sunucusunu kurar.
* postgresql-contrib: PostgreSQL için ek modülleri ve yardımcı programları içerir.
* libpq-dev: PostgreSQL istemci kütüphaneleri için geliştirme dosyalarıdır. Rails uygulamalarının PostgreSQL’e bağlanması için bu gereklidir.

Kurulum tamamlandıktan sonra PostgreSQL servisi otomatik olarak başlar. Durumunu kontrol etmek için:

sudo systemctl status postgresql

Çıktıda active (exited) veya active (running) gibi bir ifade görmelisiniz.

PostgreSQL Kullanıcısı ve Veritabanı Oluşturma

PostgreSQL, varsayılan olarak postgres adında bir süper kullanıcı hesabı oluşturur. Bu hesabı kullanarak yeni kullanıcılar ve veritabanları oluşturabiliriz.

Önce postgres kullanıcısına geçin:

sudo -i -u postgres

Şimdi psql komut satırı istemcisine girin:

psql

psql istemcisindeyken, kendi Ubuntu kullanıcı adınızla aynı adla bir PostgreSQL kullanıcısı oluşturmak iyi bir pratiktir. Bu, Rails’in varsayılan olarak bağlantı kurmaya çalışacağı kullanıcı adıdır.

CREATE USER your_username WITH SUPERUSER PASSWORD 'your_password';

your_username yerine kendi Ubuntu kullanıcı adınızı, your_password yerine güvenli bir şifre yazın. SUPERUSER ayrıcalığı, geliştirme ortamında kolaylık sağlar, ancak üretim ortamında daha kısıtlı ayrıcalıklar verilmelidir.

Şimdi psql istemcisinden çıkın:

\q

Tekrar normal Ubuntu kullanıcınıza dönmek için:

exit

Artık Rails uygulamalarınızda kullanabileceğiniz bir PostgreSQL kullanıcınız var.

MySQL Kurulumu (Alternatif)

Eğer PostgreSQL yerine MySQL’i tercih ediyorsanız, aşağıdaki adımları takip edebilirsiniz.

MySQL Sunucusunu Kurma

MySQL sunucusunu ve gerekli geliştirme kütüphanelerini kurmak için:

sudo apt-get install -y mysql-server libmysqlclient-dev

* mysql-server: MySQL veritabanı sunucusunu kurar. Kurulum sırasında size root kullanıcısı için bir şifre belirlemeniz istenebilir.
* libmysqlclient-dev: MySQL istemci kütüphaneleri için geliştirme dosyalarıdır. Rails uygulamalarının MySQL’e bağlanması için bu gereklidir.

Kurulum tamamlandıktan sonra MySQL servisi otomatik olarak başlar. Durumunu kontrol etmek için:

sudo systemctl status mysql
MySQL Kullanıcısı ve Veritabanı Oluşturma

MySQL’e root kullanıcısı olarak bağlanın:

sudo mysql -u root -p

Kurulum sırasında belirlediğiniz root şifresini girmeniz istenecektir.

MySQL istemcisindeyken, kendi Ubuntu kullanıcı adınızla aynı adla bir MySQL kullanıcısı oluşturun:

CREATE USER 'your_username'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON . TO 'your_username'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

your_username yerine kendi Ubuntu kullanıcı adınızı, your_password yerine güvenli bir şifre yazın.

Şimdi MySQL istemcisinden çıkın:

exit

Artık Rails uygulamalarınızda kullanabileceğiniz bir MySQL kullanıcınız var.

İlk Rails Uygulamasını Oluşturma ve Çalıştırma

Tüm bağımlılıkları ve çerçeveleri kurduktan sonra, artık ilk Ruby on Rails uygulamanızı oluşturmaya hazırsınız.

Yeni Bir Rails Projesi Oluşturma

Terminalde, uygulamalarınızı depolamak istediğiniz dizine gidin (örneğin, ana dizininizde bir projects klasörü oluşturabilirsiniz):

mkdir ~/projects
cd ~/projects

Şimdi yeni bir Rails uygulaması oluşturun. Eğer PostgreSQL kullanıyorsanız --database=postgresql bayrağını ekleyin. Eğer MySQL kullanıyorsanız --database=mysql bayrağını kullanın.

rails new my_first_app --database=postgresql

Bu komut, my_first_app adında yeni bir Rails projesi oluşturur ve gerekli tüm dosya ve dizinleri ayarlar. Bu işlem biraz zaman alabilir.

Proje oluşturulduktan sonra, projenin dizinine geçin:

cd my_first_app

Veritabanı Yapılandırması (database.yml)

Rails, veritabanı bağlantı bilgilerini config/database.yml dosyasında saklar. Bu dosyayı düzenleyerek PostgreSQL veya MySQL kullanıcı adınızı ve şifrenizi girmeniz gerekir.

Bir metin düzenleyici ile config/database.yml dosyasını açın (örneğin nano veya gedit):

nano config/database.yml

development ve test ortamları için username ve password alanlarını, veritabanı kurulumunda oluşturduğunuz kullanıcı adı ve şifre ile güncelleyin. Örneğin, PostgreSQL için şöyle görünebilir:

# config/database.yml
development:
  adapter: postgresql
  encoding: unicode
  pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
  username: your_username # Burayı güncelleyin
  password: your_password # Burayı güncelleyin
  host: localhost
  database: my_first_app_development

test:
  adapter: postgresql
  encoding: unicode
  pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
  username: your_username # Burayı güncelleyin
  password: your_password # Burayı güncelleyin
  host: localhost
  database: my_first_app_test

Değişiklikleri kaydedin ve düzenleyiciden çıkın (Nano için Ctrl+O, Enter, Ctrl+X).

Veritabanını Oluşturma

Veritabanı yapılandırmasını güncelledikten sonra, Rails uygulamanız için veritabanlarını oluşturmanız gerekir:

rails db:create

Bu komut, my_first_app_development ve my_first_app_test adında iki veritabanı oluşturacaktır.

Rails Sunucusunu Başlatma

Artık Rails uygulamanızı yerel sunucuda çalıştırabilirsiniz:

rails server

Veya kısaca:

rails s

Bu komut, Rails’in varsayılan web sunucusu olan Puma’yı başlatacaktır. Terminalde Listening on tcp://127.0.0.1:3000 gibi bir çıktı görmelisiniz.

Tarayıcıda Kontrol Etme

Web tarayıcınızı açın ve adres çubuğuna http://localhost:3000 yazın. Eğer her şey doğru kurulduysa, “Yay! You’re on Rails!” yazan varsayılan Rails hoş geldiniz sayfasını görmelisiniz.

Tebrikler! Ubuntu 16.04 üzerinde RVM ile Ruby on Rails geliştirme ortamınızı başarıyla kurdunuz ve ilk uygulamanızı çalıştırdınız.

Sık Karşılaşılan Sorunlar ve Çözümleri

Kurulum sürecinde bazı yaygın sorunlarla karşılaşabilirsiniz. İşte bazıları ve olası çözümleri:

1. RVM veya Ruby Komutları Bulunamıyor (Command Not Found)

* Sorun: rvm, ruby, gem veya rails gibi komutları çalıştırdığınızda command not found hatası alıyorsunuz.
* Çözüm: RVM ortam değişkenlerinin mevcut terminal oturumunuza yüklenmemiş olması muhtemeldir. Terminali kapatıp yeniden açın veya aşağıdaki komutu çalıştırın:

source ~/.rvm/scripts/rvm

Eğer RVM ile Ruby sürümünü değiştirdiyseniz, o sürümü tekrar etkinleştirdiğinizden emin olun:

rvm use ruby-2.4.10 --default # veya kullandığınız sürüm

2. Gem Yükleme Hataları (Derleme Sorunları)

* Sorun: gem install komutunu çalıştırırken, özellikle nokogiri, pg (PostgreSQL adaptörü) veya mysql2 (MySQL adaptörü) gibi gem’ler için derleme hataları alıyorsunuz.
Çözüm: Bu genellikle eksik sistem bağımlılıklarından kaynaklanır. “Ön Hazırlıklar” bölümündeki tüm lib-dev paketlerinin kurulu olduğundan emin olun. Özellikle:
* nokogiri için: libxml2-dev ve libxslt1-dev
* pg için: libpq-dev
* mysql2 için: libmysqlclient-dev
* Genel derleme sorunları için: build-essential
Gerekli paketleri kurduktan sonra gem’i tekrar yüklemeyi deneyin.

3. Veritabanı Bağlantı Sorunları

* Sorun: rails db:create veya rails server çalıştırırken veritabanı bağlantı hatası alıyorsunuz (örneğin FATAL: password authentication failed for user "your_username").
* Çözüm:
* config/database.yml dosyasındaki username ve password bilgilerinin doğru olduğundan emin olun.
* PostgreSQL veya MySQL servislerinin çalışır durumda olduğundan emin olun:

sudo systemctl status postgresql # veya mysql

* Veritabanı kullanıcınızın doğru ayrıcalıklara sahip olduğundan emin olun. Gerekirse veritabanı kullanıcısını silip yeniden oluşturun ve doğru şifreyi belirleyin.
* PostgreSQL için, pg_hba.conf dosyasındaki kimlik doğrulama yöntemlerini kontrol etmeniz gerekebilir (geliştirme ortamında genellikle md5 veya trust kullanılır).

4. Node.js veya Yarn ile İlgili Sorunlar

* Sorun: Rails uygulamasını çalıştırırken JavaScript derlemesi ile ilgili hatalar alıyorsunuz (örneğin Webpacker::Manifest::MissingEntryError).
* Çözüm:
* Node.js ve npm’in doğru bir şekilde kurulduğundan emin olun (node -v, npm -v).
* Projenizin Gemfile dosyasında webpacker gem’inin etkin olduğundan emin olun.
* Proje dizininde yarn install komutunu çalıştırarak JavaScript bağımlılıklarını kurun (Yarn, npm’e alternatif bir paket yöneticisidir ve Rails uygulamalarında sıkça kullanılır. Kurulumu için sudo apt-get install yarn komutunu kullanabilirsiniz).
* Eğer Node.js sürümünüz eskiyse, NodeSource deposunu kullanarak daha güncel bir sürüm kurun.

5. Yavaş Kurulum veya Derleme Süreleri

* Sorun: Ruby veya Rails gem’lerinin kurulumu çok uzun sürüyor.
* Çözüm: Bu normaldir, özellikle Ruby’nin kaynak koddan derlenmesi ve birçok gem’in indirilip kurulması zaman alabilir. İnternet bağlantınızın hızı ve sisteminizin işlem gücü bu süreyi etkiler. Sabırlı olun.

Bu sorun giderme ipuçları, karşılaşabileceğiniz çoğu problemi çözmenize yardımcı olacaktır. Eğer belirli bir sorunla karşılaşırsanız, hata mesajını dikkatlice okuyun ve internette arama yaparak daha fazla bilgi edinebilirsiniz.

Sonuç: Başarılı Bir Rails Geliştirme Ortamı

Bu kapsamlı rehber boyunca, Ubuntu 16.04 işletim sistemi üzerine RVM kullanarak Ruby’yi ve ardından Ruby on Rails çerçevesini nasıl kuracağınızı adım adım öğrendiniz. Başlangıçta sistem güncellemeleri ve gerekli bağımlılıkların kurulumu ile sağlam bir temel oluşturduk. Ardından, RVM’in kurulumunu ve Ruby sürümlerini nasıl yöneteceğinizi detaylandırdık. Ruby’yi kurduktan sonra, Rails gem’ini yükledik ve modern Rails uygulamaları için vazgeçilmez olan Node.js’yi sisteme entegre ettik. Son olarak, bir veritabanı (PostgreSQL) kurduk ve ilk Rails uygulamanızı oluşturup başarıyla çalıştırdık.

Bu kurulum süreci, size güçlü ve esnek bir geliştirme ortamı sağlamak için tasarlanmıştır. RVM sayesinde, farklı projeleriniz için farklı Ruby ve Rails sürümlerini kolayca yönetebilir, bağımlılık çakışmalarını önleyebilir ve temiz bir geliştirme deneyimi yaşayabilirsiniz. Ubuntu 16.04 gibi kararlı bir LTS sürümü üzerinde çalışmak, uzun vadede güvenilir bir temel sunar.

Artık Rails uygulamaları geliştirmeye hazırsınız! Bir sonraki adımlarınız şunlar olabilir:
* Rails Kılavuzlarını Keşfetme: Ruby on Rails’in resmi kılavuzları (guides.rubyonrails.org), çerçeve hakkında derinlemesine bilgi edinmek için harika bir kaynaktır.
* Model-View-Controller (MVC) Mimarisi: Rails’in temel mimarisini anlamak, uygulamalarınızı daha etkili bir şekilde tasarlamanıza yardımcı olacaktır.
* Veritabanı Migrasyonları: Veritabanı şemanızı nasıl yöneteceğinizi öğrenin.
* Scaffolding ve Kaynak Oluşturma: Rails’in hızlı uygulama geliştirme yeteneklerini keşfedin.
* Test Odaklı Geliştirme (TDD): Uygulamalarınızı testlerle destekleyerek daha sağlam kod yazma pratiği edinin.

Ruby on Rails topluluğu oldukça canlı ve destekleyicidir. Karşılaştığınız herhangi bir sorunda veya yeni bir şey öğrenmek istediğinizde, Stack Overflow, Rails forumları ve çeşitli geliştirici blogları gibi kaynaklara başvurmaktan çekinmeyin. Başarılı bir geliştirme yolculuğu dileriz!

Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.