Rails Hosting - 10 VPS providers that FULLY support Ruby on Rails

The simple answer to running Ruby on Rails applications on different hosting services is that if you have access to the underlying operating system, you can run the apps.

The core requirements (well, two core requirements) that are essential for Rails applications and are missing from most "traditional" hosting services include...


  • Deployment Mechanism (usually GIT)

  • Viable application server supporting Rails (Puma or Passenger)





The first problem can generally be solved using FTP (not the most effective solution, but still works).

The second is much more problematic and why most people use VPS solutions to deploy Rails apps (VPS servers give you unrestricted access to the underlying infrastructure).

VPS servers are basically what the "cloud" providers give people access to. Unlike "traditional" hosts - which literally allocate space to a single server, the new "cloud" infrastructure effectively distributes the load across an entire data center of servers.

This not only reduces costs, but also ensures that the buyer can actually *scale* their computing resource without having to physically pay for a new server. In any case, if you absolutely want to host a "rails" based application on a "cloud" VPS. The only problem with this is that you are responsible for provisioning the server (which is another story in itself).

Rails compatible hosts

To that end, the most important thing to realize is that looking at this list, ANY VPS server can run a Rails app. You just need to make sure you know how to install the various applications (which I'll cover in another article). For now, let's look at the most effective and cost-effective hosts:



  1. Digital ocean




    The undisputed KING from cheap "cloud" VPS providers. Founded in 2011, it was the first to offer a one-price VPS infrastructure for developers. From $5/month you get access to a large number of data centers and many different server configurations. The most important thing to realize about DO - as with most other "cloud" VPS hosts - is that running a VPS server literally gives you access to a Linux box running in a data center. You are responsible for setting up everything else (unless - of course - you pay for the pre-compiled images etc.). Regardless - this is by far the most effective "budget" VPS provider for Rails apps.




  2. fillr




    A lesser known, but still very effective cloud VPS service - Vultr is basically a "mini-me" for DigitalOcean. It has data centers in a number of different locations (ranging from the US to Japan and even Germany and the Netherlands) - allowing for wider coverage. The main thing to appreciate with Vultr is that it's basically designed to be DigitalOcean's equivalent - without the extra frills the former may have. For instance, it doesn't have built-in monitoring software (which DigitalOcean includes for free), and Vultr's big claim-to-fame came from its $2.50/month VPS server (which is currently "sold out"). This was very effective for developers who just wanted to push simple apps (to test in a test environment or to keep costs down). You still need to provision servers, just like with DigitalOcean.




  3. UpCloud








    Touted as the "fastet" cloud VPS provider, Finland's UpCloud offers essentially the same services as the first two providers (DigitalOcean + Vultr) - except with a much deeper focus on support. The system provides an API along with a host of other services and allows users to deploy VPS servers in a number of data centers around the world. Again, the main difference with these is the proportional speed of the servers they serve. This is apparently due to their MaxIOPs technology, which actually allows them to keep (and thus speed up) a lot of data in memory. Prices start from $5/month and - yes - you still have to provision the servers yourself.




  4. ExoScale








    European "cloud" hosting - based in Switzerland, specialized in providing Eurocentric infrastructure. With 4 data centers (2 in Switzerland, 1 in Austria and 1 in Germany), the company has chosen to be extremely specific in its approach to providing infrastructure for different application developers. Though their prices are very competitive, the most important thing to realize about this company is the efficiency they provide. Being Swiss, they benefit from the deep-rooted culture of efficiency that permeates the majority of the Swiss community. This means that you not only get quick email responses, but also in-depth and well-thought-out answers. They tend to provide services to many banks and financial institutions across Europe. Their niche level targeting allows them to specialize in ensuring the speed, reliability and efficiency of their service is optimal for the clients they work with.




  5. Hetzner (cloud)








    Hetzner is a German hosting company with two data centers in the country. While they were founded as a "traditional" hosting, meaning they essentially assigned their data center to whoever paid for servers. Since 2017, the company has started offering a "cloud" service - where you can set up VPS servers in exactly the same way as DigitalOcean, Vultr and the many other providers. With comparable prices, the most important element for Hetzner's company is that it is almost exclusively focused on the German market. This isn't to say they don't serve international customers - but in terms of their data center availability and how they handle support etc, it's an all-German operation. Obviously, with prices starting at ~$5/month, they only offer the ability to deploy servers - it's up to you to provide them.




  6. Linode








    Not as well known as DigitalOcean or Vultr, but no less effective - Linode is a favorite of many smaller developers, as it was one of the first to offer low-cost "cloud" VPS servers. Linode is effective, with prices starting at $5/month - it has a number of data centers around the world and is pretty much on par with the more popular "cloud" services. As always, you don't get any frills with the service. You still have to set up and maintain the servers yourself.




  7. Rack space








    RackSpace, the "daddy" of online hosting, has been a major player in the hosting world since its inception in 1998. As you can imagine, they were also involved in the "cloud" game very early on. The problem with Rackspace - like Microsoft - is that it is expensive. Designed primarily for larger organizations, their "cloud" servers start from $50/month - but are offset by the "fanatical" support the company will provide. This support is actually really good and allows users to really rely on it to make things work as effectively as possible. I wouldn't recommend Rackspace for smaller projects. It's just not worth the price, especially when you have DigitalOcean doing the same thing but at a fraction of the cost.




  8. Microsoft Azure








    Microsoft's "cloud" VPS offering is perhaps the most effective of the big 3 (Google, Amazon, Microsoft). Azure is packed with additional services that help developers launch applications across a variety of Microsoft data centers. The company fully supports Linux and Windows VPS systems and is one of the few to offer a deeper understanding of how the different servers work. They give access to a comprehensive dashboard, which allows you to track everything from resource usage to the number of requests received by different servers. While this sounds nice, it is expensive. And his Real designed to help large organizations adopt "the cloud" - putting it out of reach for most smaller developers. If you are interested in using it, you should definitely look up about it first.




  9. AWS (EC2)








    AWS is good but expensive (especially if you need more computing power). Hailed as the "native" cloud provider, each EC2 instance you launch effectively acts as an independent VPS. The problem with AWS is that because it's so broad, it's hard to know what you actually need with it. Further, like Microsoft Azure and Google Cloud Platform, the sheer scale of the infrastructure used is huge. Therefore, it should come as no surprise to learn that most of the popular web-based applications (especially those that rely on, say, S3) rely on EC2 and AWS to run. Because of this, the service is typically seen as supporting larger deployments, which require multiple server clusters, DB servers, and CDN management (Amazon actually owns "CloudFlare"). Ultimately, if you want to deploy a large and popular application, the AWS infrastructure would definitely help you. The price isn't great, but it's well supported and backed by Amazon's mammoth infrastructure (which it uses for its own operations).




  10. Google Cloud Platform








    Google's entry into the "cloud" space, its "cloud platform" is used by the likes of Apple and Twitter. Like Azure and AWS, it is used by larger organizations to streamline their infrastructure requirements. Of course, since Google uses the platform for their own infrastructure, you have to be able to trust the system - and their community is actually very strong and active. The big difference with Google's platform is the pricing. They offer very competitive pricing, allowing a number of different developers to deploy software without incurring huge costs.


The key with all of these - as mentioned - is that you typically need to provision the different servers. This means installing the web and application server software, libraries and any support services (SSL certificates, etc.).

If you're willing to use a service like Nanobox, Hatchbox, RailsHosting, or VPSDeploy, you should be able to avoid the pain of setting up a valid web host...but ultimately, what you do is entirely up to you.

To be clear, the beauty of "traditional"/"shared" hosting has not yet been captured in the "cloud" arena. Instead of providing a simple platform to deploy apps, you are pretty much left to your own devices.

Comments