Я следую учебник здесь: http://experimentsinmeteor.com/photo-blog-part-1/Ошибка: FS.Store.S3 необходимо указать «ведро» вариант (meteor.js и s3)
я могу получить мое приложение для запуска хорошо, когда я использую:
meteor --settings settings.json
Но когда я просто использовать «meteor
», чтобы начать свой локальный сервер, или при развертывании приложения на моем производстве (на Heroku), аварий приложений, и я получаю этот выход:
=> Started proxy.
=> Started MongoDB.
W20160227-10:30:11.721(-8)? (STDERR)
W20160227-10:30:11.722(-8)? (STDERR) /Users/*************/.meteor/packages/meteor-tool/.1.1.10.1b51q9m++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/fibers/future.js:245
W20160227-10:30:11.722(-8)? (STDERR) throw(ex);
W20160227-10:30:11.722(-8)? (STDERR) ^
W20160227-10:30:11.722(-8)? (STDERR) Error: FS.Store.S3 you must specify the "bucket" option
W20160227-10:30:11.723(-8)? (STDERR) at new FS.Store.S3 (packages/cfs_s3/packages/cfs_s3.js:95:1)
W20160227-10:30:11.723(-8)? (STDERR) at lib/collections/images.js:2:20
W20160227-10:30:11.723(-8)? (STDERR) at /Users/**************/www/myapp/.meteor/local/build/programs/server/app/lib/collections/images.js:58:4
W20160227-10:30:11.723(-8)? (STDERR) at /Users/**************/www/myapp/.meteor/local/build/programs/server/boot.js:242:10
W20160227-10:30:11.723(-8)? (STDERR) at Array.forEach (native)
W20160227-10:30:11.723(-8)? (STDERR) at Function._.each._.forEach (/Users/***************/.meteor/packages/meteor-tool/.1.1.10.1b51q9m++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/underscore/underscore.js:79:11)
W20160227-10:30:11.723(-8)? (STDERR) at /Users/*************/www/myapp/.meteor/local/build/programs/server/boot.js:137:5
=> Exited with code: 8
У меня есть thi s часть приложения структурированы подобно тому, как это делается в учебнике:
У меня есть .gitignore, который включает в себя только settings.json
У меня есть файл settings.json в корне:
{
"AWSAccessKeyId" : "access key",
"AWSSecretAccessKey" : "secret",
"AWSBucket" : "bucket name"
}
Тогда у меня есть Библиотека/коллекция/файл images.js:
if (Meteor.isServer) {
var imageStore = new FS.Store.S3("images", {
/* OPTIONAL IN MOST CASES */
region: "us-west-1", // substitute the region you selected
/* REQUIRED */
accessKeyId: Meteor.settings.AWSAccessKeyId,
secretAccessKey: Meteor.settings.AWSSecretAccessKey,
bucket: Meteor.settings.AWSBucket
});
Images = new FS.Collection("Images", {
stores: [imageStore],
filter: {
allow: {
contentTypes: ['image/*']
}
}
});
}
// On the client just create a generic FS Store as don't have
// access (or want access) to S3 settings on client
if (Meteor.isClient) {
var imageStore = new FS.Store.S3("images");
Images = new FS.Collection("Images", {
stores: [imageStore],
filter: {
allow: {
contentTypes: ['image/*']
},
onInvalid: function(message) {
Bert.alert(message);
}
}
});
}
// Allow rules
Images.allow({
insert: function() { return true; },
update: function() { return true; }
});
Я знаю, что это работает, потому что я могу хранить изображения, когда я бег:
meteor --settings settings.json
Используется только исключительно «метеор» и в производстве, что эта ошибка появляется (проверяет журналы героя и показывает одно и то же).