Derzeit verwende ich Bluemix, um eine Website mit PencilBlue bereitzustellen und zu hosten. Mein Problem liegt in der Verbindung eines Speicherdienstes "komponiere für Mongo" und des Pencilblue Frameworks. Diese Verbindung wird über VCAP JSON hergestellt. Die VCAP kommt mit der folgenden Struktur;Compose-for-mongodb Bluemix-Verbindung mit Pencilblue
Wie ich verstehe, ist "komponieren-für-mongodb" ein Cluster statt eines Servers. Wir müssen die Verbindung zwischen PencilBlue und diesem "Cluster" über VCAP JSON herstellen. Derzeit versuchen wir, den JSON Parse im config.js
wie so führen:
if (typeof process.env.VCAP_SERVICES === 'string') {
try {
var vcapServices = JSON.parse(process.env.VCAP_SERVICES);
var vcapMongo = vcapServices['compose-for-mongodb'][0].credentials;
var uri = vcapMongo.uri;
mongoConfig.servers = [
uri
];
var userPassword = uri.split('mongodb://')[1].split('@')[0].split(':');
mongoConfig.authentication = {
un: userPassword[0],
pw: userPassword[1]
};
var db = uri.split('?uri=')[0].split('/')[1];
mongoConfig.options.mongos = {
ssl: true,
sslValidate: true,
sslCA: [new Buffer(vcapMongo.ca_certificate_base64, 'base64')],
poolSize: 1,
reconnectTries: 1
};
mongoConfig.name = db;
Wir ohne Erfolg mehrere Möglichkeiten ausprobiert haben.
Ist schon jemand auf dieses Problem gestoßen? Gibt es Unterlagen zu diesem Thema? Zu Reproduzieren
Schritte zum:
eine Bluemix Knoten App erstellen und verbinden Sie es mit dem "compose-for-mongodb" Storage-Service.
PencilBlue Version: 0.8.0
Umgebung Beschreibung: Node.js SDK in Bluemix und komponieren-for-mongodb Dienst verbunden
die Datei lebensrettend war, danke –