The Cloudant Location Tracker is a demo web application which records a device's location and saves this information to IBM Cloudant.
Get the project and change into the project directory:
$ git clone https://github.com/cloudant-labs/location-tracker-nodejs.git
$ cd location-tracker-nodejs
Local configuration is done through a .env
file. One environment variable, VCAP_SERVICES
, is needed in order to configure your local development environment. The value of the VCAP_SERVICES
is a string representation of a JSON object. Here is an example .env
file:
VCAP_SERVICES={"cloudantNoSQLDB": [{"name": "cloudant-location-tracker-db","label": "cloudantNoSQLDB","plan": "Shared","credentials": {"username": "your-username","password": "your-password","host": "your-host","port": 443,"url": "https://your-username:your-password@your-host"}}]}
Note: Services created within Bluemix are automatically added to the VCAP_SERVICES
environment variable. Therefore, no configuration is needed for Bluemix.
Install the project's dependencies:
$ npm install
Run the project through Foreman:
$ foreman start
Complete these steps first if you have not already:
- Install the Cloud Foundry command line interface.
- Follow the instructions at the above link to connect to Bluemix.
- Follow the instructions at the above link to log in to Bluemix.
Create a Cloudant service within Bluemix if one has not already been created:
$ cf create-service cloudantNoSQLDB Shared cloudant-location-tracker-db
To deploy to Bluemix, simply:
$ cf push
Note: You may notice that Bluemix assigns a URL to your app containing a random word. This is defined in the manifest.yml
file. The host
key in this file contains the value cloudant-location-tracker-${random-word}
. The random word is there to ensure that multiple people deploying the Location Tracker application to Bluemix do not run into naming collisions. However, this will cause a new route to be created for your application each time you deploy to Bluemix. To prevent this from happening, replace ${random-word}
with a hard coded (but unique) value.
The Location Tracker sample web application includes code to track deployments to IBM Bluemix and other Cloud Foundry platforms. The following information is sent to a Deployment Tracker service on each deployment:
- Application Name (
application_name
) - Space ID (
space_id
) - Application Version (
application_version
) - Application URIs (
application_uris
)
This data is collected from the VCAP_APPLICATION
environment variable in IBM Bluemix and other Cloud Foundry platforms. This data is used by IBM to track metrics around deployments of sample applications to IBM Bluemix to measure the usefulness of our examples, so that we can continuously improve the content we offer to you. Only deployments of sample applications that include code to ping the Deployment Tracker service will be tracked.
Deployment tracking can be disabled by removing ./admin.js track &&
from the install
script line of the scripts
section within package.json
.
Licensed under the Apache License, Version 2.0.