{"id":46351,"date":"2014-06-06T17:28:57","date_gmt":"2014-06-06T14:28:57","guid":{"rendered":"https:\/\/www.altoros.com\/blog\/?p=46351"},"modified":"2019-08-29T17:52:53","modified_gmt":"2019-08-29T14:52:53","slug":"mbaas-on-cloud-foundry-how-to-deploy-helios","status":"publish","type":"post","link":"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/","title":{"rendered":"MBaaS on Cloud Foundry: How to Deploy Helios"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_79_2 counter-hierarchy ez-toc-counter ez-toc-transparent ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#What_MBaaS_is\" >What MBaaS is?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#Prerequisites\" >Prerequisites<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#Installing_PostgreSQL\" >Installing PostgreSQL<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#Installing_Helios\" >Installing Helios<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#Installing_the_Cloud_Foundry_CLI\" >Installing the Cloud Foundry CLI<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#Preparing_to_deploy_an_app\" >Preparing to deploy an app<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#Deploying_your_app_to_Cloud_Foundry\" >Deploying your app to Cloud Foundry<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#Further_reading\" >Further reading<\/a><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"What_MBaaS_is\"><\/span>What MBaaS is?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Mobile_backend_as_a_service\" rel=\"noopener noreferrer\" target=\"_blank\">Mobile-backend-as-a-service<\/a> frameworks appeared to speed up app development by providing\/automating such things as user and data management, billing, etc. Thanks to MBaaS, developers can finally concentrate on implementing the features they envisioned, instead of worrying about infrastructure. Dozens of solutions exist today. Paid ones generally offer more advanced features, but there are also some decent open-source options.<\/p>\n<p><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/helios-logo.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/helios-logo.png\" alt=\"\" width=\"250\" class=\"alignright size-full wp-image-46358\" \/><\/a><\/p>\n<p><a href=\"https:\/\/github.com\/helios-framework\/helios\" rel=\"noopener noreferrer\" target=\"_blank\">Helios<\/a> MBaaS is one of them. It is an extensible open-source mobile backend framework that provides essential services. In fact, it is a Ruby Gem that can be used to build an independent Rack application. Helios can also be implemented with Sinatra or Ruby on Rails. Out-of-the-box features include synchronization, push notifications, in-app purchases, logging, analytics, etc. In addition, Helios is one of MBaaS frameworks\u2014along with LoopBack\u2014that can be deployed to PaaS systems, such as Cloud Foundry.<\/p>\n<p>In this tutorial, we will walk you through the steps for deploying Helios with your application to Cloud Foundry.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Prerequisites\"><\/span>Prerequisites<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Helios uses PostgreSQL and its hash store. To operate normally, it needs the <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">XCDATAMODEL<\/code> file in the XML format (borrowed from the iOS SDK), where the business logic will be described.<\/p>\n<p>To deploy Helios on Cloud Foundry, we will need to install and set up the following:<\/p>\n<ul>\n<li>PostgreSQL<\/li>\n<li>Helios<\/li>\n<li>Cloud Foundry Command Line Interface (CLI)<\/li>\n<\/ul>\n<p>Before starting, you also need to check your Ruby version by typing the following lines into the terminal.<\/p>\n<pre style=\"padding-left: 30px;\">ruby -v\r\n# ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]<\/code><\/pre>\n<p>As you can see, we are using Ruby 1.9.3 (and newer versions should do just fine). We also prefer to use RVM and Gemsets.<\/p>\n<pre style=\"padding-left: 30px;\">rvm gemset use 1.9.3-p484@cf_helios --create --default\r\n# Using 1.9.3-p484@cf_helios with gemset cf_helios\r\n# ruby-1.9.3-p484 - #gemset created \/home\/alexander\/.rvm\/gems\/ruby-1.9.3-p484@cf_helios\r\n# ruby-1.9.3-p484 - #generating cf_helios wrappers<\/pre>\n<p>Now, let&#8217;s begin.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Installing_PostgreSQL\"><\/span>Installing PostgreSQL<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>PostgreSQL is one of Helios\u2019s external dependencies. Helios also uses the <a href=\"https:\/\/www.postgresql.org\/docs\/9.5\/hstore.html\" rel=\"noopener noreferrer\" target=\"_blank\">PostgreSQL hstore<\/a> extension, so we are going to install it, as well. Besides that, since we are going to deploy our app to Cloud Foundry, we need to provide a PostgreSQL service. There are a couple of ways to do this. If your existing Cloud Foundry installation already has a PostgreSQL service (or a way to create one), you can just bind it to your app. However, we had no other way but to provide a service of our own.<\/p>\n<p>Let&#8217;s start with local setup. The simplest way to do it on Ubuntu 12.04 LTS is with the command below.<\/p>\n<pre style=\"padding-left: 30px;\">sudo apt-get install postgresql-9.1 posgresql-contrib-9.1<\/code><\/pre>\n<p>In addition, you are going to need a user and a proper database.<\/p>\n<pre style=\"padding-left: 30px;\">psql postgres\r\nCREATE DATABASE cf_helios_db;\r\nCREATE USER cf_helios_user WITH PASSWORD 'cf_helios_password';\r\nGRANT ALL PRIVILEGES ON DATABASE cf_helios_db TO cf_helios_user;\r\n\\c cf_helios_db\r\nCREATE EXTENSION hstore;\r\n\\q<\/pre>\n<p>If you want to provide the PostgreSQL service from your computer, simply follow the instructions below. Otherwise, you will need to install PostgreSQL on a machine that can be accessed by your app from Cloud Foundry (in our case, it was a machine with a public IP).<\/p>\n<p>Then, you need to proceed with additional steps required for PostgreSQL to receive remote connections. Add the following line\u00a0to <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">\/etc\/postgresql\/9.1\/main\/postgresql.conf<\/code>.<\/p>\n<pre style=\"padding-left: 30px;\">listen_addresses = '*'<\/pre>\n<p>Then, add the line below to <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">\/etc\/postgresql\/9.1\/main\/pg_hba.conf<\/code>.<\/p>\n<pre style=\"padding-left: 30px;\">host all all 0.0.0.0\/0 md5<\/pre>\n<p>Note, that depending on the operating system, these files might be stored in a different location. In addition, do not forget about firewalls. By default, PostgreSQL uses port 5432.<\/p>\n<p>Restart PostgreSQL for changes to take effect.<\/p>\n<pre style=\"padding-left: 30px;\">\u2028sudo service postgresql restart<\/pre>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Installing_Helios\"><\/span>Installing Helios<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Now, let&#8217;s install Helios.<\/p>\n<pre style=\"padding-left: 30px;\">gem install helios\r\n# Fetching: highline-1.6.20.gem (100%)\r\n# Successfully installed highline-1.6.20...\r\n# ...\r\n# Installing ri documentation for venice-0.2.0\r\n# Installing ri documentation for zurb-foundation-4.1.2\r\n# 52 gems installed<\/pre>\n<p>To create an application, use the following code.<\/p>\n<pre style=\"padding-left: 30px;\">helios new cf_helios_app\r\n#         create  Procfile\r\n#         create  Gemfile\r\n# ...\r\n# Initialized empty Git repository in \/home\/alexander\/cf_helios_app\/.git\/\r\n# [master (root-commit) ad7e12a] Initial Commit\r\n# 6 files changes, 200 insertions(+) ...<\/pre>\n<p>It will create the <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">ch_helios_app<\/code> folder in your current directory. You need to edit the <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">cf_helios_app\/.env<\/code> file, so that it looks like shown below.<\/p>\n<pre style=\"padding-left: 30px;\">DATABASE_URL=postgres:\/\/cf_helios_user:cf_helios_password@localhost\/cf_helios_db<\/pre>\n<p>Now, you can use <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">helios start<\/code> to launch your app inside the <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">cf_helios_app<\/code> directory. We recommend that you open <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">http:\/\/localhost:5000\/admin\/<\/code> in your browser to make sure it works properly.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Installing_the_Cloud_Foundry_CLI\"><\/span>Installing the Cloud Foundry CLI<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Installing the Cloud Foundry console is as simple as it can be.<\/p>\n<pre style=\"padding-left: 30px;\">gem install cf\r\n# Fetching: addressable-2.3.5.gem (100%)\r\n# Successfully installed addressable-2.3.5\r\n# Fetching: multi_json-1.8.4.gem (100%)...\r\n# ...\r\n# Installing ri documentation for uuidtools-2.1.4\r\n# 23 gems installed<\/pre>\n<p>Now, we need to connect with our Cloud Foundry deployment. The console will ask you to select the organization and space. Just follow the steps below.<\/p>\n<pre style=\"padding-left: 30px;\">cf target http:\/\/api.cloudfoundry.yourcfdomain.com\r\n# Setting target to http:\/\/api.cloudfoundry.yourcfdomain.com... OK\r\n\r\ncf login\r\n# target: http:\/\/api.cloudfoundry.yourcfdomain.com\r\n\r\n# Email&gt; your_cf_login\r\n\r\n# Password&gt; ********\r\n\r\n# Authenticating... OK\r\n# 1: your_organization\r\n# Organization&gt; 1\r\n\r\n# Switching to organization your_organization... OK\r\n# 1: dev\r\n# Space&gt; 1\r\n\r\n# Switching to space dev... OK<\/pre>\n<p>We are almost ready to deploy our application to Cloud Foundry.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Preparing_to_deploy_an_app\"><\/span>Preparing to deploy an app<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>As mentioned before, in order to deploy an application, you need to deliver a PostgreSQL service. To create a so-called user-provided service in Cloud Foundry, type the following lines in your terminal.<\/p>\n<pre style=\"padding-left: 30px;\">cf create-service\r\n# 1: mongodb , via \r\n# 2: user-provided , via \r\n# What kind?&gt; 2\r\n\r\n# Name?&gt; postgresql-d15b3   \r\n\r\n# What credential parameters should applications use to connect to this service instance?\r\n# (e.g. hostname, port, password)&gt; uri\r\n\r\n# uri&gt; postgres:\/\/cf_helios_user:cf_helios_password@your_postgresql_host\/cf_helios_db\r\n\r\n# Creating service postgresql-d15b3... OK<\/pre>\n<p>Then, create the <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">.cfignore<\/code> file inside the <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">cf_helios_app<\/code> directory and add the line below.<\/p>\n<pre style=\"padding-left: 30px;\">.sass-cache\r\n.env<\/pre>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Deploying_your_app_to_Cloud_Foundry\"><\/span>Deploying your app to Cloud Foundry<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>To deploy your application, follow the directions of the Cloud Foundry console. Inside the <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">cf_helios_app<\/code> directory, do as listed below.<\/p>\n<pre style=\"padding-left: 30px;\">cf push\r\n# Name&gt; helios\r\n\r\n# Instances&gt; 1\r\n\r\n# 1: 128M\r\n# 2: 256M\r\n# 3: 512M\r\n# 4: 1G\r\n# Memory Limit&gt; 3   \r\n\r\n# Creating helios... OK\r\n\r\n# 1: helios\r\n# 2: none\r\n# Subdomain&gt; 1     \r\n\r\n# 1: cloudfoundry.yourcfdomain.com\r\n# 2: none\r\n# Domain&gt; 1                       \r\n\r\n# Binding helios.cloudfoundry.yourcfdomain.com to helios... OK\r\n\r\n# Create services for application?&gt; n\r\n\r\n# Bind other services to application?&gt; y\r\n\r\n# ...\r\n# 7: postgresql-d15b3\r\n# Which service?&gt; 7\r\n\r\n# Binding postgresql-d15b3 to helios... OK\r\n# Bind another service?&gt; n\r\n\r\n# Save configuration?&gt; y\r\n\r\n# Saving to manifest.yml... OK\r\n# Uploading helios... OK\r\n# Preparing to start helios... OK\r\n# -----&gt; Downloaded app package (8.0K)\r\n# -----&gt; Using Ruby version: ruby-1.9.3\r\n# -----&gt; Installing dependencies using Bundler version 1.3.2\r\n#        Running: bundle install --without development:test...\r\n#        Fetching gem metadata from https:\/\/rubygems.org\/........\r\n#        Fetching gem metadata from https:\/\/rubygems.org\/..\r\n#        Installing i18n (0.6.9)\r\n# ...\r\n# Checking status of app 'helios'...\r\n#   0 of 1 instances running (1 starting)\r\n#   0 of 1 instances running (1 starting)\r\n#   0 of 1 instances running (1 starting)\r\n#   0 of 1 instances running (1 starting)\r\n#   0 of 1 instances running (1 starting)\r\n#   1 of 1 instances running (1 running)\r\n# Push successful! App 'helios' available at helios.cloudfoundry.yourcfdomain.com<\/pre>\n<p>Now, you can access your <a href=\"http:\/\/helios.cloudfoundry.yourcfdomain.com\/admin\" target=\"_blank\" rel=\"noopener noreferrer\">Helios app<\/a>. Note that Cloud Foundry has changed the application port from 5000 to 80.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/deployed-helios-app-on-cloud-foundry.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/deployed-helios-app-on-cloud-foundry-1024x525.png\" alt=\"\" width=\"640\" class=\"aligncenter size-large wp-image-46368\" \/><\/a><\/center><\/p>\n<p>You might want to consider another MBaaS option, such as LoopBack. In this case, you can check out our <a href=\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-loopback\/\">blog post<\/a> on how to deploy it to Cloud Foundry.  <\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Further_reading\"><\/span>Further reading<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-loopback\/\">MBaaS on Cloud Foundry: How to Deploy LoopBack<\/a><\/li>\n<\/ul>\n<hr \/>\n<p><center><small>This post was written by <b>Alexander Sologub<\/b> and edited by <a href=\"https:\/\/www.altoros.com\/blog\/author\/volha-kurylionak\/\">Volha Kurylionak<\/a>.<\/small><\/center><\/p>\n","protected":false},"excerpt":{"rendered":"<p>What MBaaS is?<\/p>\n<p>Mobile-backend-as-a-service frameworks appeared to speed up app development by providing\/automating such things as user and data management, billing, etc. Thanks to MBaaS, developers can finally concentrate on implementing the features they envisioned, instead of worrying about infrastructure. Dozens of solutions exist today. Paid ones generally offer more advanced [&#8230;]<\/p>\n","protected":false},"author":42,"featured_media":46368,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":"","_links_to":"","_links_to_target":""},"categories":[214],"tags":[873,206],"class_list":["post-46351","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorials","tag-cloud-native","tag-oss-cloud-foundry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>MBaaS on Cloud Foundry: How to Deploy Helios | Altoros<\/title>\n<meta name=\"description\" content=\"Learn how MBaaS automates development, how to use the PostgreSQL hstore extension for Helios, which preparations are needed to deploy an app, etc.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"MBaaS on Cloud Foundry: How to Deploy Helios | Altoros\" \/>\n<meta property=\"og:description\" content=\"What MBaaS is? Mobile-backend-as-a-service frameworks appeared to speed up app development by providing\/automating such things as user and data management, billing, etc. Thanks to MBaaS, developers can finally concentrate on implementing the features they envisioned, instead of worrying about infrastructure. Dozens of solutions exist today. Paid ones generally offer more advanced [...]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/\" \/>\n<meta property=\"og:site_name\" content=\"Altoros\" \/>\n<meta property=\"article:published_time\" content=\"2014-06-06T14:28:57+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-08-29T14:52:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/deployed-helios-app-on-cloud-foundry.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1081\" \/>\n\t<meta property=\"og:image:height\" content=\"554\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Alexander Sologub\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Alexander Sologub\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/\",\"name\":\"MBaaS on Cloud Foundry: How to Deploy Helios | Altoros\",\"isPartOf\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/deployed-helios-app-on-cloud-foundry.png\",\"datePublished\":\"2014-06-06T14:28:57+00:00\",\"dateModified\":\"2019-08-29T14:52:53+00:00\",\"author\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/926ba6b8608065bae61d79cfd7da9bce\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#primaryimage\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/deployed-helios-app-on-cloud-foundry.png\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/deployed-helios-app-on-cloud-foundry.png\",\"width\":1081,\"height\":554},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.altoros.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"MBaaS on Cloud Foundry: How to Deploy Helios\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\",\"url\":\"https:\/\/www.altoros.com\/blog\/\",\"name\":\"Altoros\",\"description\":\"Insight\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.altoros.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/926ba6b8608065bae61d79cfd7da9bce\",\"name\":\"Alexander Sologub\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/12\/Sologub_Aleksandr.jpg\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/12\/Sologub_Aleksandr.jpg\",\"caption\":\"Alexander Sologub\"},\"description\":\"Alexander Sologub has 6+ years in software engineering, being an expert in cloud automation and designing architectures for complex cloud-based systems. With strong background in Ruby, Go, and JavaScript, Alex took part in integrating a number of popular clouds with RightScale (a web-based platform for managing cloud infrastructures from multiple providers). His interests embrace building IoT solutions powered by cloud technologies and designing architectures that meet customer needs. Check out Alexander\u2019s profile on GitHub.\",\"url\":\"https:\/\/www.altoros.com\/blog\/author\/alexander-sologub\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"MBaaS on Cloud Foundry: How to Deploy Helios | Altoros","description":"Learn how MBaaS automates development, how to use the PostgreSQL hstore extension for Helios, which preparations are needed to deploy an app, etc.","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:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/","og_locale":"en_US","og_type":"article","og_title":"MBaaS on Cloud Foundry: How to Deploy Helios | Altoros","og_description":"What MBaaS is? Mobile-backend-as-a-service frameworks appeared to speed up app development by providing\/automating such things as user and data management, billing, etc. Thanks to MBaaS, developers can finally concentrate on implementing the features they envisioned, instead of worrying about infrastructure. Dozens of solutions exist today. Paid ones generally offer more advanced [...]","og_url":"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/","og_site_name":"Altoros","article_published_time":"2014-06-06T14:28:57+00:00","article_modified_time":"2019-08-29T14:52:53+00:00","og_image":[{"width":1081,"height":554,"url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/deployed-helios-app-on-cloud-foundry.png","type":"image\/png"}],"author":"Alexander Sologub","twitter_misc":{"Written by":"Alexander Sologub","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/","url":"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/","name":"MBaaS on Cloud Foundry: How to Deploy Helios | Altoros","isPartOf":{"@id":"https:\/\/www.altoros.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#primaryimage"},"image":{"@id":"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#primaryimage"},"thumbnailUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/deployed-helios-app-on-cloud-foundry.png","datePublished":"2014-06-06T14:28:57+00:00","dateModified":"2019-08-29T14:52:53+00:00","author":{"@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/926ba6b8608065bae61d79cfd7da9bce"},"breadcrumb":{"@id":"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#primaryimage","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/deployed-helios-app-on-cloud-foundry.png","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/deployed-helios-app-on-cloud-foundry.png","width":1081,"height":554},{"@type":"BreadcrumbList","@id":"https:\/\/www.altoros.com\/blog\/mbaas-on-cloud-foundry-how-to-deploy-helios\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.altoros.com\/blog\/"},{"@type":"ListItem","position":2,"name":"MBaaS on Cloud Foundry: How to Deploy Helios"}]},{"@type":"WebSite","@id":"https:\/\/www.altoros.com\/blog\/#website","url":"https:\/\/www.altoros.com\/blog\/","name":"Altoros","description":"Insight","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.altoros.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/926ba6b8608065bae61d79cfd7da9bce","name":"Alexander Sologub","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/12\/Sologub_Aleksandr.jpg","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/12\/Sologub_Aleksandr.jpg","caption":"Alexander Sologub"},"description":"Alexander Sologub has 6+ years in software engineering, being an expert in cloud automation and designing architectures for complex cloud-based systems. With strong background in Ruby, Go, and JavaScript, Alex took part in integrating a number of popular clouds with RightScale (a web-based platform for managing cloud infrastructures from multiple providers). His interests embrace building IoT solutions powered by cloud technologies and designing architectures that meet customer needs. Check out Alexander\u2019s profile on GitHub.","url":"https:\/\/www.altoros.com\/blog\/author\/alexander-sologub\/"}]}},"_links":{"self":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/46351","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/users\/42"}],"replies":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/comments?post=46351"}],"version-history":[{"count":13,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/46351\/revisions"}],"predecessor-version":[{"id":46374,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/46351\/revisions\/46374"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media\/46368"}],"wp:attachment":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media?parent=46351"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/categories?post=46351"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/tags?post=46351"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}