Build Meteor Applications with Cloudant and quickly deploy on IBM Bluemix
Mario Briggs 270001DNFS Comment (1) Visits (14783)
The focus of this blog however is about backend databases to use with your Meteor app and then deploying the application on IBM Bluemix. Up until recently, Meteor only supported MongoDB as the database for an application, but that got better with support for Apache CouchDB as the database in Meteor (Meteor is also working on relational db support). Given that the best DBaas offerings of these databases - Cloudant and Mong
The cool reactive feature of Meteor that i spoke of is going to scale only if there is an efficient way of get the changes from the Database. The Mongo package in Meteor does this in either of 2 ways, 'listen' on the Mongo oplog or keep polling the database. Only the former is efficient and scales. The CouchDB package uses the Apache CouchDB _changes feed which is efficient.
At this point if you are continuing to read on and this is your first time with Meteor, ensure you have completed the Meteor tutorial.
OK we are going to use Cloudant as the data store with Meteor and we will provision an instance of the Cloudant service in IBM Bluemix. But wait a minute... the tutorial also shows how to use the Meteors-Accounts package, such that with one command you get user signin/signup and authentication feature in your app. That data is stored in MongoDB right ? So am i going to need both a MongoDB and a Cloudant service instance? Thanks to the early SQL integration work from Meteor, we have a work around for this and the Meteor-Accounts data will go into Cloudant as well.
The tutorial build pipeline that prepares the Meteor app for Bluemix explained :
When you click the Deploy to Bluemix button, a copy of the tutorial app code that uses Cloudant as the data store is copied into a project in your IBM Devops account. You also get a build and deploy pipeline setup for you, such that any commits to the app code in your repo kicks off a build deploy of the application to bluemix with those changes. Cool
The build job in the pipeline first installs Meteor .
It then removes the default accounts packages (which store data in MongoDB) and pulls in the mete
Finally the application's manifest.yml
Of interest in the manifest.yml file is