ローカルの Meteor Mongo データベースを Heroku にデプロイするための最新のソリューションを見つけようとして、このタイトルを何度も参照しました。したがって、質問は実際にはMONGO_URLの設定に関するものですが、同じことをする人のためにこの回答をここに投稿しています。
(無料の) mLabs を使用して、ローカルの Meteor Mongo データベースを Heroku にプッシュするための更新されたソリューション (Meteor 1.3.2.4) を次に示します。私のアプリは隕石を使用せず、「馬」ビルドパックを使用しました。
1. ローカル mongo db のダンプを作成します
アプリフォルダーのターミナル(mongoシェルではない)で、
mongodump --port=3001 -o ../dump
2. db ファイルを「dump/your-db-name」から「dump」に移動します。
私のローカル meteor インスタンスでは、/dump フォルダーはアプリの上のフォルダーに配置されていたため、「ダンプ」はアプリのフォルダーと同じディレクトリにありました。「ダンプ」には、データベースにちなんで名付けられたフォルダーが含まれていました (「ダンプ/データベース名/」)。これにより、次のスクリプトが「'my-database-name' で何をするかわからない」という mongorestore エラーで失敗します。エラーを回避するには、「my-database-name」フォルダー内のすべてのファイルを「dump」に移動してから、「my-database-name」フォルダーを削除します。
デフォルトでは、データベース名は「meteor」なので、変更していない場合は「dump/meteor/」を探してください。
3. mLabs で、管理者権限を持つユーザーを作成していない場合は作成します。私の場合、セットアップ時に割り当てられたデフォルトのユーザーが機能しませんでした。
4. ダンプしたデータベースを Heroku アプリの mLabs にプッシュします。これは、Heroku アプリに mLabs プラグインを追加し、Heroku アプリ構成で「MONGO_URL」を設定していることを前提としています。これらが完了していない場合は、最初に実行する必要があります。
ターミナル (mongo シェルではない) で、アプリのディレクトリから「ダンプ」ディレクトリを保持するディレクトリに変更します。私の場合、それは単に「cd ../」でした。
Heroku アプリの mLabs プラグインに移動し、[ツール] タブをクリックして、デフォルトの「インポート」スクリプトを取得します。このスクリプトは私にはうまくいきませんでしたが、あなたにはうまくいくかもしれません。そうでない場合は、このスクリプトを貼り付け、変数をブラケット変数に置き換えます (ブラケットも置き換えます)。
mongorestore -h [your mLabs value] -d [your mLabs default user name] -u [your mLabs created user name] -p [your mLabs created user's password]
スクリプトの実行後、mLabs の [コレクション] タブを更新して、プッシュされたデータを確認できるはずです。
頑張ってください:)これが誰かの役に立てば幸いです!