{"id":33650,"date":"2025-11-05T13:40:45","date_gmt":"2025-11-05T10:40:45","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=33650"},"modified":"2025-11-05T13:40:45","modified_gmt":"2025-11-05T10:40:45","slug":"debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/","title":{"rendered":"Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi"},"content":{"rendered":"<p><body><\/p>\n<h2>Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi<\/h2>\n<p>Debian 8 (Jessie), kararl\u0131 yap\u0131s\u0131 ve g\u00fcvenilirli\u011fi ile bilinen pop\u00fcler bir Linux da\u011f\u0131t\u0131m\u0131d\u0131r. Ruby on Rails, dinamik web uygulamalar\u0131 geli\u015ftirmek i\u00e7in kullan\u0131lan g\u00fc\u00e7l\u00fc bir web \u00e7at\u0131s\u0131d\u0131r. Geli\u015ftiricilerin farkl\u0131 Ruby projeleri i\u00e7in birden fazla Ruby s\u00fcr\u00fcm\u00fcn\u00fc y\u00f6netme ihtiyac\u0131, Ruby Version Manager (RVM) gibi ara\u00e7lar\u0131 vazge\u00e7ilmez k\u0131lar. Bu makale, Debian 8 i\u015fletim sistemi \u00fczerinde RVM kullanarak Ruby on Rails geli\u015ftirme ortam\u0131n\u0131 ad\u0131m ad\u0131m nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 detayl\u0131 bir \u015fekilde anlatmaktad\u0131r. Bu kapsaml\u0131 rehber sayesinde, hem Ruby&#8217;nin farkl\u0131 s\u00fcr\u00fcmlerini kolayca y\u00f6netebilecek hem de g\u00fc\u00e7l\u00fc Rails uygulamalar\u0131 geli\u015ftirmeye ba\u015flayabileceksiniz.<\/p>\n<h3>Giri\u015f: Neden Debian 8, RVM ve Ruby on Rails?<\/h3>\n<p>Web geli\u015ftirme d\u00fcnyas\u0131nda h\u0131z, esneklik ve kararl\u0131l\u0131k arayanlar i\u00e7in Ruby on Rails (genellikle Rails olarak an\u0131l\u0131r), pop\u00fcler bir tercihtir. Rails, &#8220;convention over configuration&#8221; (yap\u0131land\u0131rma yerine kural) felsefesiyle geli\u015ftiricilerin daha az kod yazarak daha fazla i\u015f yapmas\u0131n\u0131 sa\u011flar. Bu, prototipleme ve h\u0131zl\u0131 uygulama geli\u015ftirmede b\u00fcy\u00fck avantajlar sunar.<\/p>\n<p>Debian 8, uzun s\u00fcreli destek (LTS) ve sa\u011flam paket y\u00f6netim sistemi (APT) ile bilinen bir sunucu ve i\u015f istasyonu i\u015fletim sistemidir. Kararl\u0131l\u0131\u011f\u0131, \u00f6zellikle \u00fcretim ortamlar\u0131nda tercih edilmesinin ana nedenlerinden biridir. Ancak, geli\u015ftirme yaparken birden fazla Ruby projesiyle \u00e7al\u0131\u015fmak ve her projenin farkl\u0131 bir Ruby s\u00fcr\u00fcm\u00fc veya gem seti gerektirmesi s\u0131k\u00e7a kar\u015f\u0131la\u015f\u0131lan bir durumdur. \u0130\u015fte bu noktada Ruby Version Manager (RVM) devreye girer. RVM, tek bir makine \u00fczerinde birden fazla Ruby s\u00fcr\u00fcm\u00fcn\u00fc ve bunlara ait gem setlerini izole bir \u015fekilde kurman\u0131za, y\u00f6netmenize ve aralar\u0131nda ge\u00e7i\u015f yapman\u0131za olanak tan\u0131r. Bu sayede, proje ba\u011f\u0131ml\u0131l\u0131k \u00e7ak\u0131\u015fmalar\u0131n\u0131 \u00f6nler ve geli\u015ftirme s\u00fcrecinizi \u00e7ok daha verimli hale getirir.<\/p>\n<p>Bu makalede, Debian 8&#8217;in kararl\u0131l\u0131\u011f\u0131 ile RVM&#8217;nin esnekli\u011fini birle\u015ftirerek, en g\u00fcncel veya belirli bir Ruby on Rails s\u00fcr\u00fcm\u00fcn\u00fc nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m g\u00f6sterece\u011fiz. Bu kurulum, size g\u00fc\u00e7l\u00fc, esnek ve s\u00fcrd\u00fcr\u00fclebilir bir geli\u015ftirme ortam\u0131 sa\u011flayacakt\u0131r.<\/p>\n<h3>\u00d6n Ko\u015fullar<\/h3>\n<p>Kuruluma ba\u015flamadan \u00f6nce a\u015fa\u011f\u0131daki \u00f6n ko\u015fullar\u0131n yerine getirildi\u011finden emin olun:<\/p>\n<p>*   <strong>Debian 8 (Jessie) \u0130\u015fletim Sistemi:<\/strong> Tercihen yeni kurulmu\u015f veya temiz bir Debian 8 sanal makinesi ya da fiziksel sunucu.<br \/>\n*   <strong>\u0130nternet Ba\u011flant\u0131s\u0131:<\/strong> Paketleri indirmek i\u00e7in aktif bir internet ba\u011flant\u0131s\u0131 gereklidir.<br \/>\n*   <strong>Sudo Yetkileri:<\/strong> Kurulum ad\u0131mlar\u0131n\u0131n \u00e7o\u011fu y\u00f6netici (root) yetkileri gerektirecektir. <code>sudo<\/code> grubunda olan bir kullan\u0131c\u0131 ile i\u015flem yapman\u0131z \u00f6nerilir.<br \/>\n*   <strong>Temel Terminal Bilgisi:<\/strong> Linux komut sat\u0131r\u0131 (terminal) kullan\u0131m\u0131 hakk\u0131nda temel bilgiye sahip olman\u0131z gerekmektedir.<\/p>\n<h3>Sistemi G\u00fcncelleme ve Temel Ba\u011f\u0131ml\u0131l\u0131klar\u0131 Kurma<\/h3>\n<p>Herhangi bir b\u00fcy\u00fck kurulum i\u015flemine ba\u015flamadan \u00f6nce, sisteminizin g\u00fcncel oldu\u011fundan ve gerekli temel geli\u015ftirme ara\u00e7lar\u0131na sahip oldu\u011fundan emin olmak \u00f6nemlidir. Bu, potansiyel uyumluluk sorunlar\u0131n\u0131 \u00f6nlemeye yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<h4>Sistemi G\u00fcncelleme<\/h4>\n<p>Terminali a\u00e7\u0131n ve a\u015fa\u011f\u0131daki komutlar\u0131 \u00e7al\u0131\u015ft\u0131rarak paket listesini g\u00fcncelleyin ve y\u00fckl\u00fc paketleri y\u00fckseltin:<\/p>\n<pre><code class=\"language-bash\">sudo apt-get update\nsudo apt-get upgrade -y\nsudo apt-get dist-upgrade -y<\/code><\/pre>\n<p>*   <code>sudo apt-get update<\/code>: Yerel paket indeksinizi uzak depolardaki en son bilgilerle senkronize eder.<br \/>\n*   <code>sudo apt-get upgrade -y<\/code>: Sisteminizdeki t\u00fcm y\u00fckl\u00fc paketleri en yeni s\u00fcr\u00fcmlerine y\u00fckseltir. <code>-y<\/code> bayra\u011f\u0131, t\u00fcm onay sorular\u0131na otomatik olarak &#8220;evet&#8221; yan\u0131t\u0131 verir.<br \/>\n*   <code>sudo apt-get dist-upgrade -y<\/code>: <code>upgrade<\/code> komutuna ek olarak, yeni paket ba\u011f\u0131ml\u0131l\u0131klar\u0131 veya kald\u0131r\u0131lmas\u0131 gereken eski paketler oldu\u011funda daha ak\u0131ll\u0131ca kararlar verir. Bu, daha kapsaml\u0131 bir sistem y\u00fckseltmesi sa\u011flar.<\/p>\n<h4>Temel Geli\u015ftirme Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Kurma<\/h4>\n<p>Ruby&#8217;yi ve \u00e7e\u015fitli Ruby gem&#8217;lerini (Rails dahil) derlemek ve \u00e7al\u0131\u015ft\u0131rmak i\u00e7in bir dizi geli\u015ftirme arac\u0131na ve k\u00fct\u00fcphanesine ihtiyac\u0131m\u0131z var.<\/p>\n<pre><code class=\"language-bash\">sudo apt-get install -y build-essential curl git libssl-dev libreadline-dev zlib1g-dev \\\nlibyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libgdbm-dev libncurses5-dev \\\nlibffi-dev<\/code><\/pre>\n<p>Bu komutlarla kurulan paketlerin a\u00e7\u0131klamalar\u0131:<\/p>\n<p>*   <strong><code>build-essential<\/code><\/strong>: C\/C++ derleyicisi (GCC) ve di\u011fer temel derleme ara\u00e7lar\u0131n\u0131 i\u00e7erir. Ruby&#8217;nin kaynak koddan derlenmesi i\u00e7in gereklidir.<br \/>\n*   <strong><code>curl<\/code><\/strong>: Uzak sunuculardan veri indirmek i\u00e7in kullan\u0131lan bir komut sat\u0131r\u0131 arac\u0131d\u0131r. RVM kurulum beti\u011fini indirmek i\u00e7in kullan\u0131lacakt\u0131r.<br \/>\n*   <strong><code>git<\/code><\/strong>: S\u00fcr\u00fcm kontrol sistemi. Rails projeleri genellikle Git ile y\u00f6netilir ve baz\u0131 gem&#8217;ler Git depolar\u0131ndan \u00e7ekilebilir.<br \/>\n*   <strong><code>libssl-dev<\/code><\/strong>: OpenSSL k\u00fct\u00fcphanesinin geli\u015ftirme dosyalar\u0131. Ruby&#8217;nin HTTPS ba\u011flant\u0131lar\u0131 kurabilmesi i\u00e7in gereklidir.<br \/>\n*   <strong><code>libreadline-dev<\/code><\/strong>: Readline k\u00fct\u00fcphanesinin geli\u015ftirme dosyalar\u0131. Ruby&#8217;nin interaktif konsolu (IRB) i\u00e7in geli\u015fmi\u015f sat\u0131r d\u00fczenleme \u00f6zellikleri sa\u011flar.<br \/>\n*   <strong><code>zlib1g-dev<\/code><\/strong>: Zlib s\u0131k\u0131\u015ft\u0131rma k\u00fct\u00fcphanesinin geli\u015ftirme dosyalar\u0131. Baz\u0131 gem&#8217;ler ve Ruby&#8217;nin kendisi s\u0131k\u0131\u015ft\u0131rma i\u015flemleri i\u00e7in bunu kullan\u0131r.<br \/>\n*   <strong><code>libyaml-dev<\/code><\/strong>: YAML (YAML Ain&#8217;t Markup Language) ayr\u0131\u015ft\u0131r\u0131c\u0131s\u0131n\u0131n geli\u015ftirme dosyalar\u0131. Ruby ve Rails uygulamalar\u0131nda yap\u0131land\u0131rma dosyalar\u0131 genellikle YAML format\u0131ndad\u0131r.<br \/>\n*   <strong><code>libsqlite3-dev<\/code> ve <code>sqlite3<\/code><\/strong>: SQLite veritaban\u0131n\u0131n geli\u015ftirme dosyalar\u0131 ve komut sat\u0131r\u0131 arac\u0131. Rails&#8217;in varsay\u0131lan veritaban\u0131 olarak genellikle SQLite kullan\u0131l\u0131r, \u00f6zellikle geli\u015ftirme ortam\u0131nda.<br \/>\n*   <strong><code>libxml2-dev<\/code> ve <code>libxslt1-dev<\/code><\/strong>: XML ve XSLT i\u015fleme k\u00fct\u00fcphanelerinin geli\u015ftirme dosyalar\u0131. Baz\u0131 gem&#8217;ler XML\/HTML ayr\u0131\u015ft\u0131rma ve d\u00f6n\u00fc\u015ft\u00fcrme i\u015flemleri i\u00e7in bunlar\u0131 kullan\u0131r.<br \/>\n*   <strong><code>libgdbm-dev<\/code><\/strong>: GDBM (GNU DBM) k\u00fct\u00fcphanesinin geli\u015ftirme dosyalar\u0131.<br \/>\n*   <strong><code>libncurses5-dev<\/code><\/strong>: Ncurses k\u00fct\u00fcphanesinin geli\u015ftirme dosyalar\u0131. Terminal tabanl\u0131 uygulamalar i\u00e7in kullan\u0131c\u0131 aray\u00fcz\u00fc sa\u011flar.<br \/>\n*   <strong><code>libffi-dev<\/code><\/strong>: Foreign Function Interface k\u00fct\u00fcphanesinin geli\u015ftirme dosyalar\u0131. Ruby&#8217;nin C k\u00fct\u00fcphaneleriyle etkile\u015fim kurmas\u0131n\u0131 sa\u011flar.<\/p>\n<h4>Node.js ve Yarn Kurulumu (Asset Pipeline i\u00e7in)<\/h4>\n<p>Rails 5.x ve \u00fczeri s\u00fcr\u00fcmler, frontend varl\u0131k y\u00f6netimi (JavaScript, CSS) i\u00e7in Node.js ve Yarn&#8217;a b\u00fcy\u00fck \u00f6l\u00e7\u00fcde ba\u011f\u0131ml\u0131d\u0131r. Debian 8&#8217;in varsay\u0131lan depolar\u0131ndaki Node.js s\u00fcr\u00fcm\u00fc eski olabilece\u011finden, NodeSource deposunu kullanarak daha g\u00fcncel bir s\u00fcr\u00fcm kurmak daha iyidir.<\/p>\n<pre><code class=\"language-bash\"># NodeSource deposunu ekleme\ncurl -sL https:\/\/deb.nodesource.com\/setup_8.x | sudo -E bash -\n<h2>Debian 8 i\u00e7in Node.js 8.x s\u00fcr\u00fcm\u00fcn\u00fc ekledik. Daha g\u00fcncel bir s\u00fcr\u00fcm istiyorsan\u0131z<\/h2>\n<h2>(\u00f6rne\u011fin 10.x, 12.x), setup_8.x k\u0131sm\u0131n\u0131 setup_10.x veya setup_12.x olarak de\u011fi\u015ftirebilirsiniz.<\/h2>\n<h2>Ancak Debian 8'in eski \u00e7ekirdek ve glibc s\u00fcr\u00fcm\u00fc nedeniyle \u00e7ok yeni Node.js s\u00fcr\u00fcmleri sorun \u00e7\u0131karabilir.<\/h2>\n<h2>Bu nedenle 8.x veya 10.x daha g\u00fcvenli bir se\u00e7imdir.<\/h2>\n\n<h2>Node.js ve npm'i kurma<\/h2>\nsudo apt-get install -y nodejs\n\n<h2>Yarn'\u0131 kurma<\/h2>\ncurl -sL https:\/\/dl.yarnpkg.com\/debian\/pubkey.gpg | sudo apt-key add -\necho \"deb https:\/\/dl.yarnpkg.com\/debian\/ stable main\" | sudo tee \/etc\/apt\/sources.list.d\/yarn.list\nsudo apt-get update\nsudo apt-get install -y yarn<\/code><\/pre>\n<p>Bu ad\u0131mlar Node.js ve Yarn&#8217;\u0131 sisteminize kurar. <code>nodejs<\/code> paketiyle birlikte <code>npm<\/code> (Node Package Manager) da kurulacakt\u0131r.<\/p>\n<h3>RVM (Ruby Version Manager) Kurulumu<\/h3>\n<p>RVM, farkl\u0131 Ruby s\u00fcr\u00fcmlerini ve gemset&#8217;lerini y\u00f6netmek i\u00e7in vazge\u00e7ilmez bir ara\u00e7t\u0131r. Kurulumu olduk\u00e7a basittir.<\/p>\n<h4>RVM GPG Anahtar\u0131n\u0131 \u0130\u00e7e Aktarma<\/h4>\n<p>RVM&#8217;nin g\u00fcvenli bir \u015fekilde kuruldu\u011fundan emin olmak i\u00e7in, RVM&#8217;nin yay\u0131nc\u0131 anahtar\u0131n\u0131 sisteminize eklemeniz gerekir. Bu, indirdi\u011finiz RVM beti\u011finin ger\u00e7ekten RVM ekibinden geldi\u011fini do\u011frular.<\/p>\n<pre><code class=\"language-bash\">gpg --keyserver hkp:\/\/keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB<\/code><\/pre>\n<p>Bu komut, RVM&#8217;nin GPG anahtarlar\u0131n\u0131 GnuPG anahtar sunucusundan al\u0131r ve yerel anahtar halk\u0131n\u0131za ekler.<\/p>\n<h4>RVM&#8217;yi Kurma<\/h4>\n<p>GPG anahtarlar\u0131 i\u00e7e aktar\u0131ld\u0131ktan sonra, RVM&#8217;yi kurmak i\u00e7in <code>curl<\/code> komutunu kullanarak RVM kurulum beti\u011fini indirip \u00e7al\u0131\u015ft\u0131rman\u0131z yeterlidir:<\/p>\n<pre><code class=\"language-bash\">\\curl -sSL https:\/\/get.rvm.io | bash -s stable<\/code><\/pre>\n<p>*   <code>\\curl<\/code>: Bash&#8217;in kendi <code>curl<\/code> takma ad\u0131n\u0131 kullanmak yerine do\u011frudan <code>curl<\/code> komutunu \u00e7al\u0131\u015ft\u0131rmay\u0131 garantiler.<br \/>\n*   <code>-sSL<\/code>: <code>s<\/code> sessiz modu, <code>S<\/code> hatalar\u0131 g\u00f6sterir, <code>L<\/code> ise y\u00f6nlendirmeleri takip eder.<br \/>\n*   <code>https:\/\/get.rvm.io<\/code>: RVM kurulum beti\u011finin URL&#8217;si.<br \/>\n*   <code>| bash -s stable<\/code>: \u0130ndirilen beti\u011fi <code>bash<\/code> ile \u00e7al\u0131\u015ft\u0131r\u0131r ve <code>stable<\/code> s\u00fcr\u00fcm\u00fcn\u00fc kurmas\u0131n\u0131 s\u00f6yler.<\/p>\n<p>Kurulum tamamland\u0131ktan sonra, RVM&#8217;nin do\u011fru bir \u015fekilde y\u00fcklendi\u011finden ve kabuk ortam\u0131n\u0131za eklendi\u011finden emin olmak i\u00e7in RVM ortam betiklerini y\u00fcklemeniz gerekir.<\/p>\n<pre><code class=\"language-bash\">source \/home\/kullanici_adiniz\/.rvm\/scripts\/rvm\n<h2>veya genellikle:<\/h2>\nsource ~\/.rvm\/scripts\/rvm<\/code><\/pre>\n<p>Bu komut, RVM&#8217;nin i\u015flevlerini mevcut kabuk oturumunuza y\u00fckler. <code>kullanici_adiniz<\/code> yerine kendi kullan\u0131c\u0131 ad\u0131n\u0131z\u0131 yazmay\u0131 unutmay\u0131n. E\u011fer bu komutu \u00e7al\u0131\u015ft\u0131rd\u0131ktan sonra RVM hala tan\u0131nm\u0131yorsa, terminali kapat\u0131p yeniden a\u00e7may\u0131 deneyin. RVM genellikle <code>.bashrc<\/code> veya <code>.bash_profile<\/code> gibi kabuk yap\u0131land\u0131rma dosyalar\u0131n\u0131za otomatik olarak eklenir.<\/p>\n<h4>RVM Kurulumunu Do\u011frulama<\/h4>\n<p>RVM&#8217;nin ba\u015far\u0131l\u0131 bir \u015fekilde kurulup kurulmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">rvm -v<\/code><\/pre>\n<p>Bu komut, y\u00fckl\u00fc RVM s\u00fcr\u00fcm\u00fcn\u00fc g\u00f6stermelidir. \u00d6rne\u011fin: <code>rvm 1.29.x (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https:\/\/rvm.io]<\/code><\/p>\n<h3>RVM ile Ruby Kurulumu<\/h3>\n<p>RVM kurulduktan sonra, istedi\u011finiz Ruby s\u00fcr\u00fcm\u00fcn\u00fc kurabilir ve y\u00f6netebilirsiniz.<\/p>\n<h4>Mevcut Ruby S\u00fcr\u00fcmlerini Listeleme<\/h4>\n<p>RVM&#8217;nin kurabilece\u011fi bilinen Ruby s\u00fcr\u00fcmlerini g\u00f6rmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">rvm list known<\/code><\/pre>\n<p>Bu komut, MRI (Matz&#8217;s Ruby Interpreter), JRuby, Rubinius gibi farkl\u0131 Ruby uygulamalar\u0131n\u0131n mevcut t\u00fcm s\u00fcr\u00fcmlerini listeler.<\/p>\n<h4>Belirli Bir Ruby S\u00fcr\u00fcm\u00fcn\u00fc Kurma<\/h4>\n<p>Ruby on Rails&#8217;in belirli bir s\u00fcr\u00fcm\u00fc i\u00e7in belirli bir Ruby s\u00fcr\u00fcm\u00fcne ihtiyac\u0131n\u0131z olabilir. Bu rehber i\u00e7in, Rails 5.2.x ile uyumlu, nispeten g\u00fcncel bir Ruby s\u00fcr\u00fcm\u00fc olan Ruby 2.5.8&#8217;i kuraca\u011f\u0131z. Debian 8&#8217;in daha eski sistem k\u00fct\u00fcphaneleri nedeniyle \u00e7ok yeni Ruby s\u00fcr\u00fcmlerinde derleme sorunlar\u0131 ya\u015fanabilir, bu nedenle daha eski ama kararl\u0131 bir s\u00fcr\u00fcm tercih etmek mant\u0131kl\u0131d\u0131r.<\/p>\n<pre><code class=\"language-bash\">rvm install ruby-2.5.8<\/code><\/pre>\n<p>Bu komut, Ruby 2.5.8&#8217;i indirir, derler ve RVM ortam\u0131n\u0131za kurar. Bu i\u015flem biraz zaman alabilir, sisteminizin performans\u0131na ve internet h\u0131z\u0131n\u0131za ba\u011fl\u0131 olarak 5-15 dakika s\u00fcrebilir.<\/p>\n<h4>Varsay\u0131lan Ruby S\u00fcr\u00fcm\u00fcn\u00fc Ayarlama<\/h4>\n<p>Kurulum tamamland\u0131\u011f\u0131nda, bu Ruby s\u00fcr\u00fcm\u00fcn\u00fc sisteminiz i\u00e7in varsay\u0131lan olarak ayarlayabilirsiniz. Bu, her yeni terminal oturumu a\u00e7t\u0131\u011f\u0131n\u0131zda otomatik olarak bu Ruby s\u00fcr\u00fcm\u00fcn\u00fcn kullan\u0131lmas\u0131n\u0131 sa\u011flar.<\/p>\n<pre><code class=\"language-bash\">rvm use ruby-2.5.8 --default<\/code><\/pre>\n<p>E\u011fer sadece mevcut oturum i\u00e7in kullanmak isterseniz <code>--default<\/code> bayra\u011f\u0131n\u0131 kullanmadan <code>rvm use ruby-2.5.8<\/code> yazabilirsiniz.<\/p>\n<h4>Ruby Kurulumunu Do\u011frulama<\/h4>\n<p>Kurulan Ruby s\u00fcr\u00fcm\u00fcn\u00fc ve gem y\u00f6neticisinin (Bundler i\u00e7in gereklidir) s\u00fcr\u00fcm\u00fcn\u00fc do\u011frulamak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">ruby -v\ngem -v<\/code><\/pre>\n<p><code>ruby -v<\/code> komutu <code>ruby 2.5.8p...<\/code> gibi bir \u00e7\u0131kt\u0131 vermeli, <code>gem -v<\/code> ise y\u00fckl\u00fc Gem s\u00fcr\u00fcm\u00fcn\u00fc g\u00f6stermelidir.<\/p>\n<h3>Bundler Kurulumu<\/h3>\n<p>Bundler, Ruby projeleri i\u00e7in ba\u011f\u0131ml\u0131l\u0131k y\u00f6neticisidir. Her projenin kendi gem&#8217;lerini izole bir \u015fekilde y\u00f6netmesini sa\u011flar. Her Ruby s\u00fcr\u00fcm\u00fc i\u00e7in bir kez Bundler kurman\u0131z gerekir.<\/p>\n<pre><code class=\"language-bash\">gem install bundler<\/code><\/pre>\n<p>Bu komut, mevcut Ruby s\u00fcr\u00fcm\u00fcn\u00fcz i\u00e7in Bundler gem&#8217;ini kurar.<\/p>\n<h3>Ruby on Rails Kurulumu<\/h3>\n<p>Art\u0131k Ruby ve Bundler haz\u0131r oldu\u011funa g\u00f6re, Ruby on Rails&#8217;i kurmaya ba\u015flayabiliriz.<\/p>\n<h4>Rails Gem&#8217;ini Kurma<\/h4>\n<p>Ruby on Rails, bir gem olarak da\u011f\u0131t\u0131l\u0131r. Belirli bir Rails s\u00fcr\u00fcm\u00fcn\u00fc kurmak isterseniz, s\u00fcr\u00fcm numaras\u0131n\u0131 belirtebilirsiniz. Bu rehber i\u00e7in Rails 5.2.x s\u00fcr\u00fcm\u00fcn\u00fc kuraca\u011f\u0131z, bu da Ruby 2.5.x ile iyi uyumludur.<\/p>\n<pre><code class=\"language-bash\">gem install rails -v 5.2.8<\/code><\/pre>\n<p>*   <code>gem install rails<\/code>: Rails gem&#8217;ini kurar.<br \/>\n*   <code>-v 5.2.8<\/code>: Rails&#8217;in 5.2.8 s\u00fcr\u00fcm\u00fcn\u00fc kurmay\u0131 belirtir. En son Rails s\u00fcr\u00fcm\u00fcn\u00fc kurmak isterseniz <code>-v<\/code> bayra\u011f\u0131n\u0131 kald\u0131rabilirsiniz, ancak bu, kulland\u0131\u011f\u0131n\u0131z Ruby s\u00fcr\u00fcm\u00fcyle uyumsuzluklara neden olabilir. \u00d6zellikle Debian 8 gibi daha eski sistemlerde, daha yeni Rails s\u00fcr\u00fcmleri ek ba\u011f\u0131ml\u0131l\u0131k sorunlar\u0131 \u00e7\u0131karabilir.<\/p>\n<p>Rails&#8217;in kurulumu, ba\u011f\u0131ml\u0131 oldu\u011fu di\u011fer bir\u00e7ok gem&#8217;i de kuraca\u011f\u0131 i\u00e7in biraz zaman alabilir.<\/p>\n<h4>Rails Kurulumunu Do\u011frulama<\/h4>\n<p>Rails&#8217;in ba\u015far\u0131l\u0131 bir \u015fekilde kurulup kurulmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">rails -v<\/code><\/pre>\n<p>Bu komut <code>Rails 5.2.8<\/code> gibi bir \u00e7\u0131kt\u0131 vermelidir.<\/p>\n<h3>Yeni Bir Rails Uygulamas\u0131 Olu\u015fturma ve Test Etme<\/h3>\n<p>Rails geli\u015ftirme ortam\u0131n\u0131z art\u0131k haz\u0131r. \u015eimdi yeni bir Rails uygulamas\u0131 olu\u015fturarak her \u015feyin d\u00fczg\u00fcn \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olal\u0131m.<\/p>\n<pre><code class=\"language-bash\"># Uygulama olu\u015fturmak istedi\u011finiz dizine gidin (\u00f6rne\u011fin ana dizininiz)\ncd ~\n\n<h2>Yeni bir Rails uygulamas\u0131 olu\u015fturun<\/h2>\nrails new myapp<\/code><\/pre>\n<p>*   <code>rails new myapp<\/code>: <code>myapp<\/code> ad\u0131nda yeni bir Rails projesi olu\u015fturur. Bu komut, projenin dizin yap\u0131s\u0131n\u0131, temel dosyalar\u0131n\u0131 ve ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 haz\u0131rlar. Varsay\u0131lan olarak SQLite veritaban\u0131 ile gelir.<\/p>\n<p>Uygulama olu\u015fturulduktan sonra, proje dizinine gidin:<\/p>\n<pre><code class=\"language-bash\">cd myapp<\/code><\/pre>\n<h4>Ba\u011f\u0131ml\u0131l\u0131klar\u0131 Y\u00fckleme<\/h4>\n<p>Rails uygulamas\u0131 olu\u015fturuldu\u011funda, <code>Gemfile<\/code> ad\u0131nda bir dosya da olu\u015fturulur. Bu dosya, uygulaman\u0131n t\u00fcm Ruby gem ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 listeler. Bu ba\u011f\u0131ml\u0131l\u0131klar\u0131 y\u00fcklemek i\u00e7in <code>bundle install<\/code> komutunu kullanman\u0131z gerekir:<\/p>\n<pre><code class=\"language-bash\">bundle install<\/code><\/pre>\n<p>Bu komut, <code>Gemfile<\/code> dosyas\u0131ndaki t\u00fcm gem&#8217;leri indirir ve projenize y\u00fckler.<\/p>\n<h4>Veritaban\u0131n\u0131 Olu\u015fturma<\/h4>\n<p>Rails uygulamalar\u0131 genellikle bir veritaban\u0131na ihtiya\u00e7 duyar. Varsay\u0131lan olarak Rails, geli\u015ftirme ortam\u0131 i\u00e7in SQLite&#8217;\u0131 kullan\u0131r. Veritaban\u0131n\u0131 olu\u015fturmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">rails db:create<\/code><\/pre>\n<h4>Rails Sunucusunu Ba\u015flatma<\/h4>\n<p>Uygulaman\u0131z\u0131 yerel olarak \u00e7al\u0131\u015ft\u0131rmak ve bir web taray\u0131c\u0131s\u0131 \u00fczerinden eri\u015fmek i\u00e7in Rails sunucusunu ba\u015flat\u0131n:<\/p>\n<pre><code class=\"language-bash\">rails server<\/code><\/pre>\n<p>Bu komut, Rails uygulamas\u0131n\u0131 varsay\u0131lan olarak <code>localhost:3000<\/code> adresinde ba\u015flat\u0131r. Terminalde <code>Ctrl+C<\/code> tu\u015f kombinasyonu ile sunucuyu durdurabilirsiniz.<\/p>\n<h4>Uygulamay\u0131 Taray\u0131c\u0131da G\u00f6r\u00fcnt\u00fcleme<\/h4>\n<p>Web taray\u0131c\u0131n\u0131z\u0131 a\u00e7\u0131n ve adres \u00e7ubu\u011funa <code>http:\/\/localhost:3000<\/code> yazarak uygulaman\u0131za eri\u015fin. &#8220;Yay! You&#8217;re on Rails!&#8221; yazan varsay\u0131lan Rails kar\u015f\u0131lama sayfas\u0131n\u0131 g\u00f6rmelisiniz. Bu, Ruby on Rails geli\u015ftirme ortam\u0131n\u0131z\u0131n ba\u015far\u0131l\u0131 bir \u015fekilde kuruldu\u011funu g\u00f6sterir.<\/p>\n<h3>Opsiyonel: PostgreSQL veya MySQL Veritaban\u0131 Kurulumu<\/h3>\n<p>Geli\u015ftirme veya \u00fcretim ortamlar\u0131nda SQLite yerine daha g\u00fc\u00e7l\u00fc bir veritaban\u0131 (PostgreSQL veya MySQL) kullanmak isteyebilirsiniz. A\u015fa\u011f\u0131da her ikisi i\u00e7in de k\u0131sa bir kurulum ve yap\u0131land\u0131rma rehberi bulunmaktad\u0131r.<\/p>\n<h4>PostgreSQL Kurulumu<\/h4>\n<p>PostgreSQL, Rails uygulamalar\u0131 i\u00e7in pop\u00fcler ve g\u00fc\u00e7l\u00fc bir veritaban\u0131d\u0131r.<\/p>\n<pre><code class=\"language-bash\"># PostgreSQL sunucusunu ve istemci k\u00fct\u00fcphanelerini kurma\nsudo apt-get install -y postgresql postgresql-contrib libpq-dev\n\n<h2>PostgreSQL servisinin \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olun<\/h2>\nsudo systemctl start postgresql\nsudo systemctl enable postgresql\n\n<h2>PostgreSQL kullan\u0131c\u0131s\u0131 olu\u015fturma (varsay\u0131lan 'postgres' kullan\u0131c\u0131s\u0131 ile)<\/h2>\nsudo -u postgres createuser --interactive\n<h2>Kullan\u0131c\u0131 ad\u0131 ve s\u00fcper kullan\u0131c\u0131 yetkisi isteyip istemedi\u011fi sorulacakt\u0131r.<\/h2>\n<h2>\u00d6rne\u011fin, \"rails_user\" ad\u0131nda bir kullan\u0131c\u0131 olu\u015fturup s\u00fcper kullan\u0131c\u0131 yetkisi verebilirsiniz.<\/h2>\n\n<h2>Veritaban\u0131 olu\u015fturma<\/h2>\nsudo -u postgres createdb -O rails_user myapp_development\n<h2>Burada 'myapp_development' veritaban\u0131 ad\u0131d\u0131r ve 'rails_user' kullan\u0131c\u0131s\u0131na atanm\u0131\u015ft\u0131r.<\/h2>\n<h2>Rails uygulamas\u0131 i\u00e7in genellikle development, test ve production veritabanlar\u0131 olu\u015fturulur.<\/code><\/pre>\n<\/h2>\n<p>Rails uygulaman\u0131z\u0131n <code>config\/database.yml<\/code> dosyas\u0131n\u0131 PostgreSQL kullanacak \u015fekilde d\u00fczenlemeniz gerekecektir:<\/p>\n<pre><code class=\"language-yaml\"># config\/database.yml\ndevelopment:\n  adapter: postgresql\n  encoding: unicode\n  database: myapp_development\n  pool: 5\n  username: rails_user\n  password: sizin_sifreniz # E\u011fer bir \u015fifre belirlediyseniz<\/code><\/pre>\n<p>Ard\u0131ndan, <code>Gemfile<\/code> dosyan\u0131zdaki <code>sqlite3<\/code> gem&#8217;ini yorum sat\u0131r\u0131 yaparak veya kald\u0131rarak <code>pg<\/code> gem&#8217;ini ekleyin:<\/p>\n<pre><code class=\"language-ruby\"># Gemfile\n<h2>gem 'sqlite3'<\/h2>\ngem 'pg', '~> 0.21' # Veya en son uyumlu s\u00fcr\u00fcm<\/code><\/pre>\n<p><code>bundle install<\/code> komutunu \u00e7al\u0131\u015ft\u0131r\u0131n ve sonra <code>rails db:create<\/code> ve <code>rails db:migrate<\/code> komutlar\u0131n\u0131 kullanarak veritaban\u0131n\u0131 olu\u015fturun ve \u015femay\u0131 uygulay\u0131n.<\/p>\n<h4>MySQL Kurulumu<\/h4>\n<p>MySQL de Rails uygulamalar\u0131 i\u00e7in s\u0131k\u00e7a kullan\u0131lan bir di\u011fer veritaban\u0131d\u0131r.<\/p>\n<pre><code class=\"language-bash\"># MySQL sunucusunu ve istemci k\u00fct\u00fcphanelerini kurma\nsudo apt-get install -y mysql-server libmysqlclient-dev\n\n<h2>Kurulum s\u0131ras\u0131nda root \u015fifresi belirlemeniz istenecektir.<\/h2>\n<h2>MySQL servisinin \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olun<\/h2>\nsudo systemctl start mysql\nsudo systemctl enable mysql\n\n<h2>G\u00fcvenlik yap\u0131land\u0131rmas\u0131n\u0131 \u00e7al\u0131\u015ft\u0131rma (iste\u011fe ba\u011fl\u0131 ama \u00f6nerilir)<\/h2>\nsudo mysql_secure_installation\n\n<h2>MySQL'e giri\u015f yap\u0131n<\/h2>\nmysql -u root -p\n<h2>Belirledi\u011finiz root \u015fifresini girin.<\/h2>\n\n<h2>Bir kullan\u0131c\u0131 ve veritaban\u0131 olu\u015fturun<\/h2>\nCREATE USER 'rails_user'@'localhost' IDENTIFIED BY 'sizin_sifreniz';\nCREATE DATABASE myapp_development;\nGRANT ALL PRIVILEGES ON myapp_development.* TO 'rails_user'@'localhost';\nFLUSH PRIVILEGES;\nEXIT;<\/code><\/pre>\n<p>Rails uygulaman\u0131z\u0131n <code>config\/database.yml<\/code> dosyas\u0131n\u0131 MySQL kullanacak \u015fekilde d\u00fczenleyin:<\/p>\n<pre><code class=\"language-yaml\"># config\/database.yml\ndevelopment:\n  adapter: mysql2\n  encoding: utf8\n  database: myapp_development\n  pool: 5\n  username: rails_user\n  password: sizin_sifreniz\n  host: localhost<\/code><\/pre>\n<p>Ard\u0131ndan, <code>Gemfile<\/code> dosyan\u0131zdaki <code>sqlite3<\/code> gem&#8217;ini yorum sat\u0131r\u0131 yaparak veya kald\u0131rarak <code>mysql2<\/code> gem&#8217;ini ekleyin:<\/p>\n<pre><code class=\"language-ruby\"># Gemfile\n<h2>gem 'sqlite3'<\/h2>\ngem 'mysql2', '~> 0.5' # Veya en son uyumlu s\u00fcr\u00fcm<\/code><\/pre>\n<p><code>bundle install<\/code> komutunu \u00e7al\u0131\u015ft\u0131r\u0131n ve sonra <code>rails db:create<\/code> ve <code>rails db:migrate<\/code> komutlar\u0131n\u0131 kullanarak veritaban\u0131n\u0131 olu\u015fturun ve \u015femay\u0131 uygulay\u0131n.<\/p>\n<h3>S\u0131k Kar\u015f\u0131la\u015f\u0131lan Sorunlar ve \u00c7\u00f6z\u00fcmleri<\/h3>\n<p>Kurulum s\u00fcrecinde kar\u015f\u0131la\u015fabilece\u011finiz baz\u0131 yayg\u0131n sorunlar ve potansiyel \u00e7\u00f6z\u00fcmleri:<\/p>\n<h4>1. RVM Y\u00fcklenmiyor veya Komut Bulunamad\u0131 Hatas\u0131<\/h4>\n<p>*   <strong>Sorun:<\/strong> <code>rvm: command not found<\/code> veya RVM komutlar\u0131 \u00e7al\u0131\u015fm\u0131yor.<br \/>\n*   <strong>\u00c7\u00f6z\u00fcm:<\/strong> RVM&#8217;nin kabuk ortam\u0131n\u0131za y\u00fcklenmedi\u011fi anlam\u0131na gelir. Terminali kapat\u0131p tekrar a\u00e7may\u0131 deneyin. Hala sorun ya\u015f\u0131yorsan\u0131z, <code>source ~\/.rvm\/scripts\/rvm<\/code> komutunu manuel olarak \u00e7al\u0131\u015ft\u0131r\u0131n. RVM&#8217;nin <code>.bashrc<\/code> veya <code>.bash_profile<\/code> dosyan\u0131za do\u011fru \u015fekilde eklendi\u011finden emin olun.<\/p>\n<h4>2. Ruby Kurulumu S\u0131ras\u0131nda Derleme Hatalar\u0131<\/h4>\n<p>*   <strong>Sorun:<\/strong> <code>rvm install ruby-X.X.X<\/code> komutu s\u0131ras\u0131nda uzun derleme hatalar\u0131 al\u0131yorsunuz.<br \/>\n*   <strong>\u00c7\u00f6z\u00fcm:<\/strong> Bu genellikle eksik ba\u011f\u0131ml\u0131l\u0131klar nedeniyle olur. Makalenin ba\u015f\u0131ndaki &#8220;Temel Geli\u015ftirme Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Kurma&#8221; b\u00f6l\u00fcm\u00fcndeki t\u00fcm paketlerin y\u00fcklendi\u011finden emin olun. \u00d6zellikle <code>build-essential<\/code>, <code>libssl-dev<\/code>, <code>libreadline-dev<\/code>, <code>zlib1g-dev<\/code>, <code>libyaml-dev<\/code>, <code>libffi-dev<\/code> paketleri kritik \u00f6neme sahiptir. Hata mesaj\u0131n\u0131 dikkatlice okuyarak hangi k\u00fct\u00fcphanenin eksik oldu\u011funu anlamaya \u00e7al\u0131\u015f\u0131n.<\/p>\n<h4>3. Gem Kurulumu S\u0131ras\u0131nda Hatalar<\/h4>\n<p>*   <strong>Sorun:<\/strong> <code>gem install ...<\/code> veya <code>bundle install<\/code> s\u0131ras\u0131nda hatalar al\u0131yorsunuz (\u00f6rne\u011fin <code>Could not find a valid gem ...<\/code> veya derleme hatalar\u0131).<br \/>\n*   <strong>\u00c7\u00f6z\u00fcm:<\/strong><br \/>\n    *   <strong>A\u011f sorunlar\u0131:<\/strong> \u0130nternet ba\u011flant\u0131n\u0131z\u0131n aktif oldu\u011fundan emin olun.<br \/>\n    *   <strong>Eksik sistem k\u00fct\u00fcphaneleri:<\/strong> \u00d6zellikle <code>nokogiri<\/code> veya veritaban\u0131 adapt\u00f6r\u00fc (pg, mysql2) gibi gem&#8217;ler, sistem k\u00fct\u00fcphanelerinin (libxml2-dev, libxslt1-dev, libpq-dev, libmysqlclient-dev) kurulu olmas\u0131n\u0131 gerektirir. \u0130lgili <code>dev<\/code> paketlerinin y\u00fckl\u00fc oldu\u011fundan emin olun.<br \/>\n    *   <strong>Ruby s\u00fcr\u00fcm\u00fc uyumsuzlu\u011fu:<\/strong> Kurmaya \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131z gem&#8217;in mevcut Ruby s\u00fcr\u00fcm\u00fcn\u00fczle uyumlu oldu\u011fundan emin olun.<br \/>\n    *   <strong>Yetki sorunlar\u0131:<\/strong> Bazen gem&#8217;leri kurarken <code>sudo<\/code> kullanmak gerekebilir, ancak RVM ile genellikle buna gerek kalmaz \u00e7\u00fcnk\u00fc gem&#8217;ler kullan\u0131c\u0131 dizinine kurulur.<\/p>\n<h4>4. Rails Sunucusu Ba\u015flam\u0131yor veya Varl\u0131k Derleme Hatalar\u0131<\/h4>\n<p>*   <strong>Sorun:<\/strong> <code>rails server<\/code> komutu hata veriyor veya sayfa y\u00fcklenmiyor.<br \/>\n*   <strong>\u00c7\u00f6z\u00fcm:<\/strong><br \/>\n    *   <strong>Eksik Node.js\/Yarn:<\/strong> Rails 5 ve \u00fczeri s\u00fcr\u00fcmler, varl\u0131k derlemesi i\u00e7in Node.js ve Yarn&#8217;a ihtiya\u00e7 duyar. Bu paketlerin do\u011fru bir \u015fekilde kuruldu\u011fundan emin olun. <code>node -v<\/code> ve <code>yarn -v<\/code> komutlar\u0131yla kontrol edin.<br \/>\n    *   <strong>Port \u00e7ak\u0131\u015fmas\u0131:<\/strong> Ba\u015fka bir uygulaman\u0131n 3000 numaral\u0131 portu kullan\u0131p kullanmad\u0131\u011f\u0131n\u0131 kontrol edin. <code>rails server -p 3001<\/code> ile farkl\u0131 bir portta \u00e7al\u0131\u015ft\u0131rmay\u0131 deneyin.<br \/>\n    *   <strong>Gemfile.lock sorunlar\u0131:<\/strong> <code>bundle install<\/code> komutunu tekrar \u00e7al\u0131\u015ft\u0131r\u0131n. Bazen <code>Gemfile.lock<\/code> dosyas\u0131ndaki ba\u011f\u0131ml\u0131l\u0131klar bozulabilir. <code>rm Gemfile.lock<\/code> yap\u0131p tekrar <code>bundle install<\/code> \u00e7al\u0131\u015ft\u0131rmak i\u015fe yarayabilir (ancak bu, ba\u011f\u0131ml\u0131l\u0131klar\u0131 s\u0131f\u0131rlar).<br \/>\n    *   <strong>Veritaban\u0131 sorunlar\u0131:<\/strong> <code>rails db:create<\/code> ve <code>rails db:migrate<\/code> komutlar\u0131n\u0131 \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zdan emin olun. Veritaban\u0131 ba\u011flant\u0131 bilgilerinizin <code>config\/database.yml<\/code> dosyas\u0131nda do\u011fru oldu\u011fundan emin olun.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu kapsaml\u0131 rehberde, Debian 8 (Jessie) i\u015fletim sistemi \u00fczerine RVM kullanarak Ruby on Rails geli\u015ftirme ortam\u0131n\u0131 ad\u0131m ad\u0131m nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 \u00f6\u011frendiniz. Sistemi g\u00fcncelleme, gerekli ba\u011f\u0131ml\u0131l\u0131klar\u0131 kurma, RVM&#8217;yi y\u00fckleme, Ruby&#8217;yi RVM ile y\u00f6netme, Bundler ve Rails&#8217;i kurma ve son olarak yeni bir Rails uygulamas\u0131 olu\u015fturup \u00e7al\u0131\u015ft\u0131rma s\u00fcre\u00e7lerini detayl\u0131 bir \u015fekilde ele ald\u0131k. Ayr\u0131ca, PostgreSQL veya MySQL gibi alternatif veritaban\u0131 kurulumlar\u0131n\u0131 ve s\u0131k kar\u015f\u0131la\u015f\u0131lan sorunlar\u0131n \u00e7\u00f6z\u00fcmlerini de inceledik.<\/p>\n<p>Art\u0131k kararl\u0131 bir Debian 8 tabanl\u0131 sistem \u00fczerinde, farkl\u0131 Ruby s\u00fcr\u00fcmleri ve projeler aras\u0131nda kolayca ge\u00e7i\u015f yapabilen esnek ve g\u00fc\u00e7l\u00fc bir Ruby on Rails geli\u015ftirme ortam\u0131na sahipsiniz. Bu kurulum, size web uygulamalar\u0131 geli\u015ftirmek i\u00e7in sa\u011flam bir temel sunar. Ruby on Rails&#8217;in sundu\u011fu t\u00fcm avantajlardan yararlanarak harika uygulamalar geli\u015ftirmeye ba\u015flayabilirsiniz. \u0130leriye d\u00f6n\u00fck olarak, Rails&#8217;in derinliklerine dalmak, farkl\u0131 gem&#8217;leri ke\u015ffetmek ve uygulaman\u0131z\u0131 \u00fcretim ortam\u0131na da\u011f\u0131tmak gibi ad\u0131mlarla geli\u015ftirme yolculu\u011funuza devam edebilirsiniz. Ba\u015far\u0131lar dileriz!<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi\nDebian 8 (Jessie), kararl\u0131 yap\u0131s\u0131 ve g\u00fcvenilirli\u011fi ile bilinen pop\u00fcler bir L","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[241],"tags":[],"class_list":{"0":"post-33650","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-linux","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi\" \/>\n<meta property=\"og:description\" content=\"Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi Debian 8 (Jessie), kararl\u0131 yap\u0131s\u0131 ve g\u00fcvenilirli\u011fi ile bilinen pop\u00fcler bir L\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-05T10:40:45+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"18 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi\",\"datePublished\":\"2025-11-05T10:40:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/\"},\"wordCount\":2824,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Linux\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/\",\"name\":\"Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-11-05T10:40:45+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/","og_locale":"tr_TR","og_type":"article","og_title":"Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi","og_description":"Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi Debian 8 (Jessie), kararl\u0131 yap\u0131s\u0131 ve g\u00fcvenilirli\u011fi ile bilinen pop\u00fcler bir L","og_url":"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-11-05T10:40:45+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"18 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi","datePublished":"2025-11-05T10:40:45+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/"},"wordCount":2824,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Linux"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/","url":"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/","name":"Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-11-05T10:40:45+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/debian-8-uzerine-rvm-ile-ruby-on-rails-kurulumu-kapsamli-rehberi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Debian 8 \u00dczerine RVM ile Ruby on Rails Kurulumu Kapsaml\u0131 Rehberi"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33650","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=33650"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33650\/revisions"}],"predecessor-version":[{"id":33651,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33650\/revisions\/33651"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=33650"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=33650"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=33650"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}