Deploying Rails App on Openshift Kubernetes Cluster

Pascales Kurniawan
Binar Academy
Published in
3 min readJul 24, 2018

--

Halo..

Kali ini saya akan membagikan cara deploy rails app on Openshift kubernetes cluster, Pascales-way. Mengapa Pascales-way? Karena tutorial yang saya dapat dari sini masih terlalu rumit buat saya yang noob ini. Jadi seandainya Anda mencoba mengikuti langkah langkah saya, resiko ditanggung penumpang njih hehehe.

Okay kita mulai,
1. Create Free Account di Openshift.com, Anda akan mendapatkan 1GiB Memory, 1 GiB presistent storage, 1 GiB terminating memory dan community support

2. Instal oc-CLI di https://docs.openshift.org/latest/cli_reference/get_started_cli.html

3. Setelah create account, kemudian click “open web console”

4. Pilih dari Ruby+postgreSQL dari Browse Catalog (untuk free account hanya diijinkan untuk memiliki 1 project saja)

5. Ikuti steps nya

pada field Git repository URL, biarkan saja default (https://github.com/openshift/rails-ex.git )

6. Setelah itu, login ke github.com dan kemudian clone/download sample app dari openshift https://github.com/openshift/rails-ex.git

7. Kemudian kembali ke Openshift web console, Build section ~> configuration, kemudian gantilah source repo ke source repo yang baru saja di clone/download, misal https://github.com/nama-anda/rails-ex.git

8. Copy Github webhook URL yang terdapat dibagian sebelah kanan halaman.

9. Kembali ke https://github.com/nama-anda/rails-ex.git buka setting ~> webhook ~> add webhook. paste di Payload URL, save.

10. Kemudian clone repo github anda
$ git clone https://github.com/nama-anda/rails-ex.git

11. Cd ke folder rails-ex lakukan bundle install, kemudian rails db:migrate

12. Cek error message di terminal untuk mengetahui nama database yg belum dibuat, misal :
pascales $ rails db:migrate
rails aborted!
ActiveRecord::NoDatabaseError: FATAL: database
“pascales” does not exist

13. Lanjutkan dengan create database dengan nama yang diminta, lanjutkan lagi dengan rails db:migrate

14. Jalankan rails server

15. Buka web browser pergi ke localhost:3000

public/index.html

16. Nah, menggunakan text editor anda, buka welcome_controller.rb didalam sample app tadi, hapus line : render :file => ‘public/index.html’ maka rails akan me render views/index.html.erb

welcome_controller.rb

17. Restart rails server, dan reload localhost:3000 lagi

localhost:3000

18. oke sekarang sample app nya sudah berjalan di local, langkah berikutnya adalah git add, comit kemudian push ke master di github yang secara otomatis akan terdeploy ke Openshift melalui webhook yg sudah kita set up tadi.

19. Cek di Openshift

21. Nah, sekarang sudah sinkron. Silakan buka folder rails-ex dan mulai bangun aplikasi Anda.

Wah panjang beud yah. Mudah-mudahan tidak ada yang terlewatkan. Honestly saya belum terlalu menguasai ini dan masih perlu banyak belajar. So, sekali lagi resiko ditanggung penumpang yah hehe.

Cheers!

--

--

Pascales Kurniawan
Binar Academy

"In times of change, learners inherit the earth, while the learned find themselves beautifully equipped to deal with a world that no longer exists."