Creé una instancia de servicio del mercado, por ejemplo, una instancia de mongoDB y mi pregunta es si quiero desarrollar localmente (en mi máquina local) y conectarme a esta instancia de servicio, ¿cómo puedo hacerlo?
Quiero probar mi aplicación con la instancia creada del servicio de respaldo, ¿cómo puedo hacerlo simple...? el ejemplo sera muy util
ACTUALIZACIÓN: intento conectarme a la instancia de MongoDB que está en la fundición de la nube desde mi aplicación local. (Si puse la aplicación, pude conectarme correctamente, pero quiero conectarme desde mi PC local, es decir, ejecutar mi aplicación localmente)
I got the following db (json) credentials: { "mongodb": [ { "credentials": { "dbname": "CFad18ZNGYzzrrts", "hostname": "10.11.123.30", "password": "RttomuAV9yvhwHm_", "port": "36232", "ports": { "27017/tcp": "36232", "28017/tcp": "49255" }, "uri": "mongodb://xppt7gdk1G9Y1pd3:RttomuAV9yvhwHm_@10.11.123.30:36232/CFad18ZNGYzzrrts", "username": "xppt7gdk1G9Y1pd3" }, "label": "mongodb", "name": "mod", "plan": "v3.0-container", "provider": null, "syslog_drain_url": null, "tags": [ "mongodb", "document" ], "volume_mounts": [] },cuando me conecto a esta base de datos a través de push my hice lo siguiente que funciona
if (process.env.VCAP_SERVICES) { var val = JSON.parse(process.env.VCAP_SERVICES) mongoose.connect(val['mongodb'][0].credentials.uri, function (err) {... Ahora copio la configuración anterior a mi proyecto (en config/config.json) e intento conectarme desde mi aplicación local a través de esto y no funciona
var config = require('../config/config.json'); mongoose.connect(val['mongodb'][0].credentials.uri, function (errel error es
failed to connect to server [10.11.123.30:36232] on first connect at Pool.<anonymous> (/Users/f53356/WebstormProjects/dlStackDemo/node_modules/mongodb-core/lib/topologies/server.js:325:35) at emitOne (events.js:96:13) at Pool.emit (events.js:188:7)¿Alguna idea de cómo superar esto? Uso el URI cuando mi aplicación se ejecuta en CF pero ahora no puedo ejecutarla desde mi PC localmente y conectarme a la instancia de servicio en CF , ¿alguna idea?
Ryan,
El servicio mongodb es un servicio experimental disponible en Bluemix al que solo puede acceder a través de una aplicación Cloud Foundry, por lo tanto, no puede conectarlo desde su máquina local.
Si desea usar una base de datos MongoDB en Bluemix y hacer que su aplicación se conecte a ella, puede usar el servicio Compose for MongoDB :
https://console.ng.bluemix.net/catalog/services/compose-for-mongodb
Una vez que cree una instancia de este servicio, también creará credenciales predeterminadas. Puede acceder a las credenciales a través de VCAP_SERVICES desde una aplicación Bluemix que vincula al servicio o puede obtener las credenciales a través de la línea de comando cf:
$ cf service-key your-instance-name Credentials-1 Credentials-1 es el nombre predeterminado de las credenciales cuando crea la instancia de Compose for MongoDB.
Puede asignar una ruta externa a su instancia de servicio con cf bind-route-service para realizar pruebas con una aplicación local, pero no debe hacerlo.
Es mejor tener un espacio de desarrollo separado dentro de su organización CloudFoundry y probar/implementar todo en CF desde el principio.