I am new to Rails, I have created a rails application, where I am using
jruby 1.7.16 and database PostgreSQL.Please suggest me what are the best way to deploy the application.I want to deploy the application in Ubuntu 14.04 LTS and access using ip address.
I would suggest Capistrano but you may have hard times in setting it up for the first time.
There are plenty of information on Internet about deploying your app with Capistrano but since version 3 have been released recently, be careful with the tutorials for older versions. Many things have changed after version 3
I hope it helps
Related
I've been self teaching myself ruby and rails for the past year and finally have an app ready that I want to deploy out to the world. While I can relatively easily deploy to Heroku, I would rather learn how to configure things myself but I have very little understanding of web servers and what all is needed to deploy things. I've done a lot of research and it seems like most rails apps are deployed with some combination of unicorn/puma with nginx and Capistrano. I was hoping someone had resources or could explain the bare-bones basics of these tools.
I am mostly confused about unicorn/puma vs nginx. They all seem like web-servers, but clearly nginx is different from unicorn. I have no idea how they interact with each other in order to serve web applications.
I know Capistrano is used to deploy code, but I have no idea what that actually means.
Lastly, how do these tool interact with hosts such as AWS or digital ocean.
Any help or resources that can get me started would be appreciated.
This is the best overview that helped me understand the different options that are available: Ruby on Rails Server options. It covers most app servers and how they compare practically, and it covers Capistrano at the end.
Personally, I use AWS OpsWorks for my production environment (they have a Free Tier available for a year) which has a default Rails on Nginx or Apache app server layer: http://docs.aws.amazon.com/opsworks/latest/userguide/workinglayers-rails.html.
I found the Deploying Rails book to be a comprehensive resource for all things related to rails deployment. Unfortunately it is out of print. I doubt if it is too outdated even if it was written for rails 3.
There are quite a few good blogposts; one I found very helpful was http://robmclarty.com/blog/how-to-deploy-a-rails-4-app-with-git-and-capistrano
Note: The above blogpost uses capistrano version 2.14.2.
I would advice following the same steps to understand capistrano, and then use http://capistranorb.com/documentation/upgrading/ for upgrading to capistrano version 3.x
This guide is pretty helpful and succinct
Using Capistrano 3, RVM & Puma
https://coderwall.com/p/ttrhow/deploying-rails-app-using-nginx-puma-and-capistrano-3
The idea is to find an easy solution to distribute a rails application with dependencies (redis, database, apache etc)
It seems that Github does a good job on this, see github-enterprise-faq. The idea is to pack the rails app as an VMware to hide the code and mount it to the network.
Does anybody have experience with that approach?
similar to, but old:
2012 Distribute Ruby on Rails app
2008 Can you Distribute a Ruby on Rails Application without Source?
Options for distribution of an offline Ruby on Rails application
Vagrant and Chef are exactly what you're after.
Evening all,
I have a rails app that I need to deploy to a 1&1 Virtual Server L Windows.
My setup uses a MYSQL db, rails 3.2, ruby 1.9 and was built on a mac.
I have read numerous accounts of Linux style deployments, however do the same rules apply when using a windows server? Some articles reccomend ftp'ing your app and then installing 3 other dependencies. Is this too good to be true?
I realise this is a fairly open ended question, but does anyone know the first few steps to getting this thing up and running or any helpful documents?
Thanks in Advance
Andy
I haven't tested it, because I'm not using a windows server, but have you checked this?
https://github.com/SciMed/capistrano-windows-server
I'm almost finished with the development of my first ruby on rails app. I am using windows for development. Now i want to deploy my app (most likely on iPage web hosting). the procedure described in Agile Web dev... appear to only work on MAC OS X (with passenger, etc) and didn't have much luck googling.
My questions are:
1- Is there a good and easy to follow tutorial/book/etc on how to set up local production server on windows (e.g. using apache and mysql (Possibly WAMP)) and porting it to a remote host?
2- can the book "Deploying Rails Applications: A Step-by-Step Guide" help me?
3- Would it worth the effort that i install VMware,Ubunto (or another Unix/Linux based OS) and do the production there?
Thank you!
I ran into a similar situation where we had to decide on Rails app deployment to a Windows server rather than to a Linux one. I did some research but never tried out anything since fortunately we decided to stick with a Linux server. I was not particularly happy with what I found but here it is in case it helps:
Deployment to Windows using Capistrano based gem
Articles on other deployment options to Windows
I am in the process of learning Ruby on Rails and things have been going smoothly - up until I tried to deploy one of my test applications to my shared hosting account.
I use Host Gator and was able to successfully create a new Ruby on Rails app via cPanel and run it. The only problem is that when you create a new app this way, it populates its directory with a blank application - as would rails new app_name locally. When I delete the files and folders in this directory and replace them with my own, then attempt to run the app, cPanel says that it is running on the confirmation page but it never actually starts. I am not receiving any error messages either.
The host seemed rather stumped, stating that it should be a matter of deleting the initial files and folders and replacing them, then running. The app works fine locally so I do not think that it is a code issue. In my research I came across Passenger, although it is way over my head and it would appear that you really need to have total control over Apache to make it all work, including ssh.
If it makes any difference, the apps I made locally were put together using an installation of Rails Installer and are scaffolded. For testing I am using a bare minimum app with about three fields in the table.
What am I missing? Any help would be appreciated.
Maximum supported versions on 26/10/2013 are:
Ruby 1.8.7
RubyGems 1.8.25
Rails 2.3.18
Anything newer than that is a near guaranteed breakage and cPanel & WHM will be incapable of utilizing it in any way, shape, or form.
We can assist you with removing your existing Ruby on Rails installations and reverting them back to cPanel supported and sanctioned versions (Ruby 1.8, RubyGems 1.8, and Rails 2). That is the only thing we can do for you at this time.
If you want to use any versions newer than this, then you will be unable to use the cPanel & WHM interfaces or management tools for it -- they simply will not work. You will then have to manually manage your RoR install by yourself through command line exclusively. None of it would fall under the scope of cPanel support.
You can use http://ndeploy.in which is a third party plugin to integrate Rails Hosting via Phsuion Passenger in cPanel .
Just to let others who is using Cpanel with rails know.
I was able to use Cpanel to create a rails app, start it, and do the redirection all within Cpanel.
Nothing to modify or change. Quite straightforward for me.
So I guess it would be easier to do the development work straight on the server itself.
Have not tried to deploy a locally developed rails to shared server, or any per se. But I'm guessing we could create rails with Cpanel and replace the files in the directory generated.