Ruby on Rails (RoR), atau singkatan "rails", adalah kerangka kerja aplikasi web sisi server yang ditulis dalam ruby yang mengikuti konsep MVC (Model-View-Controller). RoR dirilis di bawah Lisensi MIT OpenSource. Rails menyediakan struktur default untuk database, layanan web, dan halaman web. Rails banyak digunakan, lebih dari 3000 orang telah memberikan kontribusi kode untuk proyek Rails sampai sekarang dan ada banyak aplikasi berbasis Rails, seperti Github, Airbnb, Soundcloud dll.
Dalam tutorial ini, saya akan menunjukkan cara menginstal Rails di CentOS 7. Kami akan menginstal dan mengonfigurasi Ruby on Rails dengan database PostgreSQL, lalu membuat proyek pertama kami dengan Rails.
Prasyarat
- Server dengan sistem operasi CentOS 7
- Hak istimewa root
Langkah 1 - Instal RVM
RVM atau Ruby Version Manager adalah alat baris perintah berdasarkan Bash dan Ruby untuk mengelola penginstalan Ruby. RVM memungkinkan Anda untuk menginstal dan mengonfigurasi beberapa versi ruby pada server yang sama secara bersamaan untuk memungkinkan Anda bekerja dengan beberapa lingkungan ruby.
Pastikan perintah curl diinstal pada sistem Anda.
yum install curl
Pada langkah ini, kita akan menginstal versi RVM stabil. Kita perlu mendownload kunci repositori dan mengimpornya dengan perintah gpg sebelum kita mulai menginstal RVM.
curl -sSL https://rvm.io/mpapis.asc | gpg --import -
Kemudian instal RVM.
curl -sSL https://get.rvm.io | bash -s stable --ruby
Perintah tersebut akan menginstal paket yang diperlukan (dependensi paket) terlebih dahulu, lalu mendownload versi RVM stabil terbaru dan menginstalnya.
Sekarang kita dapat mulai menggunakan RVM dengan menjalankan perintah di bawah ini:
sumber /usr/local/rvm/scripts/rvm
Langkah 2 - Instal Ruby
Versi stabil Ruby saat ini adalah 2.3.1. Kami akan menginstalnya dengan perintah "rvm" dan kemudian menjadikannya versi ruby default untuk sistem Anda.
Perbarui RVM ke versi stabil terbaru, lalu instal Ruby 2.3.1.
rvm get stable --autolibs=enable
rvm install ruby-2.3.1
Selanjutnya, jadikan Ruby 2.3.1 sebagai versi Ruby default dari sistem.
rvm --default menggunakan ruby-2.3.1
Periksa versi Ruby dengan perintah di bawah untuk memastikan bahwa langkah-langkah di atas berhasil:
ruby -v
Langkah 3 - Instal Nodejs
Rails memerlukan runtime JavaScript untuk mengompilasi pipeline aset Rails. Untuk pengembangan Rails di Ubuntu Linux, yang terbaik adalah menginstal Nodejs sebagai runtime Javascript.
Instal nodejs dari repositori nodesource:
curl -sL https://rpm.nodesource.com/setup_6.x | sudo -E bash -
yum -y install nodejs
Periksa apakah node dan npm berhasil diinstal pada sistem.
simpul -v
npm -v
Langkah 4 - Konfigurasi Permata
RubyGems adalah Manajer Paket Ruby. Ini menyediakan alat baris perintah permata dan diinstal secara otomatis ketika Anda menginstal Ruby pada suatu sistem.
Perbarui versi permata dan periksa:
perbaruan permata --system
gem -v
Ini opsional:Anda dapat menonaktifkan untuk menginstal dokumentasi pada setiap instalasi permata dengan menambahkan baris di bawah ini ke file .gemrc. Saya akan melakukannya di sini karena menghemat ruang hard disk dan saya lebih suka membaca dokumentasi di internet.
echo "gem:--no-document">> ~/.gemrc
Langkah 5 - Instal Ruby on Rails 5 (Stabil)
Instal Ruby on Rails 5 dengan perintah gem di bawah ini:
gem install rails -v 5.0.0
Ketika instalasi selesai dengan sukses, periksa versi Rails:
rel -v
Anda akan melihat ini sebagai hasilnya:
Rel 5.0.0
Rails 5.0 diinstal pada CentOS 7 dengan Ruby 2.3.1.
Langkah 6 - Mengatur Database PostgreSQL untuk Pengembangan Rails
Pada langkah ini, kita akan menyiapkan PostgreSQL untuk pengembangan Rails. Ruby on Rails mendukung banyak database seperti MySQL, SQLite (Default) dan PostgreSQL. Saya akan menggunakan PostgreSQL sebagai database untuk panduan ini.
Instal PostgreSQL dengan perintah yum ini:
yum -y instal postgresql-server postgresql-devel postgresql-contrib
Sekarang kita harus menginisialisasi server database dengan perintah initdb.
postgresql-setup initdb
Secara default, PostgreSQL di server CentOS tidak mengizinkan otentikasi berbasis kata sandi. Kita perlu mengedit konfigurasi PostgreSQL untuk instalasi RoR untuk mengizinkan login dengan kata sandi.
Edit pg_hba.conf dengan vim:
vim /var/lib/pgsql/data/pg_hba.conf
Ubah metode otentikasi menjadi md5.
host semua semua 127.0.0.1/32 md5
# koneksi lokal IPv6:
host semua semua
Simpan file, lalu mulai layanan "postgresql".
systemctl start postgresql
Postgresql berjalan di alamat ip localhost dengan port 5432, Anda dapat memeriksanya dengan perintah di bawah ini:
netstat -plntu
systemctl status postgresql
Ketika instalasi selesai, jadilah pengguna postgres pada shell dengan su dan kemudian akses shell postgresql (psql).
su - postgres
psql
Tetapkan kata sandi baru untuk pengguna postgres dengan perintah di bawah ini:
\password postgres
Masukkan kata sandi baru:
Selanjutnya, buat peran baru bernama 'rails-dev' untuk pengembangan rails dengan perintah ini:
buat role rails_dev dengan kata sandi login createb 'aqwe123';
Periksa peran baru, Anda akan melihat peran baru dibuat:
\du
Database PostgreSQL dan pengguna untuk Rails Development telah dibuat.
Langkah 7 - Buat Aplikasi Pertama dengan Rails dan PostgreSQL
Kita dapat membuat aplikasi pertama kita dengan perintah rails dengan mudah.
Buat aplikasi baru dengan PostgreSQL sebagai database default.
rails new myapp -d postgresql
Perintah ini akan membuat direktori baru 'myapp' dan menginstal permata baru termasuk permata "pg" yang diperlukan oleh Rails untuk terhubung ke database PostgreSQL.
Buka direktori 'newapp' dan edit file database.yml di direktori config.
cd myapp/
vim config/database.yml
Di bagian pengembangan, batalkan komentar pada baris 32 dan atur peran yang telah kita buat di langkah 6.
nama pengguna:rails_dev
Setel kata sandi pengguna rails_dev pada baris 35.
sandi:aqwe123
Batalkan komentar pada baris 40 dan 44 untuk konfigurasi host database.
host:localhost
port:5432
Sekarang, buka bagian pengujian dan tambahkan konfigurasi baru di bawah ini:
database:myapp_test
host:localhost
port:5432
nama pengguna:rails_dev
sandi:aqwe123
Simpan file dan keluar dari editor.
Selanjutnya, buat database dengan perintah rails:
rails db:setup
rails db:migrate
Kemudian jalankan server Rails dengan perintah di bawah ini:
rails s -b 192.168.33.10 -p 8080
Buka browser web Anda dan kunjungi alamat ip server pada port 8080 - 192.168.33.10:8080.
Kembali ke terminal Anda. Buat perancah baru untuk berinteraksi dengan database PostgreSQL.
Ketik perintah di bawah ini:
rails g scaffold Judul postingan:string body:text
rake db:migrate
Jalankan server Rails lagi.
rails s -b 192.168.33.10 -p 8080
Kunjungi server :192.168.33.10:8080/posts
Anda akan melihat antarmuka CRUD sederhana yang ditulis dalam Ruby on Rails dengan PostgreSQL.
Tautan
- https://www.ruby-lang.org/en/
- http://guides.rubyonrails.org/
- https://www.postgresql.org/docs/