我正在尝试在Google的云上部署我的Meteor React应用程序但是当我尝试部署它时,我收到错误消息,说明需要指定MONGO_URL。我构建我的meteor应用程序并cd到我的<div id="result"></div>
<select required name="client_id" id="client_id" class="form-control selectpicker show-tick form-control" data-live-search="true" data-show-subtext="true" >
<option value="">-- NONE --</option>
<option data-info="jUST tESTING" data-x="y" value="2" data-subtext="Santa Maria #1234">Antonio Perez </option>
<option value="5" data-subtext="AV. Los Cerrillos 602, Chile - Santiago">Tatiana Gutierrez </option>
<option data-info="aNOTHER tEST" data-x="y" value="6" data-subtext="xxxxxxxxxxxxxxxx">Ventas </option>
</select>
<script>
$(function () {
$('select').change(function () {
if ($(this).children('option:selected').data('x') == 'y') {
$("#result").html($(this).children('option:selected').attr('data-info'));
}
else
$("#result").html("");
});
});
</script>
我的包文件夹。这是我的package.json
gcloud app deploy
如何找到我的meteor mongo用户名和密码。运行常规流星并没有问我的用户名和密码。这是我的app.yaml
{
"private": true,
"scripts": {
"start": "node main.js",
"install": "(cd programs/server && npm install)"
},
"engines": {
"node": "6.6.0"
}
}
如果我在gcloud上部署,我不知道要为MONGO_URL和ROOT_URL添加什么。我还有我的项目的设置文件。它应该在app.yaml中的METER_SETTINGS下吗?我为提出太多问题而道歉,但这是我第一次处理gcloud:)
答案 0 :(得分:2)
这个问题有点陈旧,但它仍然可以从Google获得一些观点,所以让我们逐一回答,首先你需要了解Meteor如何在开发和生产中与MongoDB进行交互。当您编写应用程序代码时,只需执行# Use this template for the command
mongo "mongodb://root:PASSWORD@IP_ADDRESS/" --authenticationDatabase admin
# For example, with sample values
mongo "mongodb://root:8sdjkfh8876@127.0.0.1/" --authenticationDatabase admin
即可完成所有工作,因为Meteor会部署内部MongoDB。这不建议用于实际生产用途,并且在任何基于容器的体系结构(例如Docker,Google App Engine,Heroku等)下都不能正常工作。
鉴于此,您需要在基于MongoDB的Google Compute Engine中部署单独的实例。 Google已准备好在Google Cloud Launcher中启动,只需搜索“MongoDB”。
我推荐Bitnami的一个,如果你刚开始的话,它更容易配置。
Google会自动创建一个实例,您将获得一个root用户名和密码,以及一个连接到该实例的公共IP地址。
运行以下命令从终端访问Mongo:
root
现在,为Meteor创建一个新用户,以便在新创建的数据库上进行连接。永远不要给它myapp
凭据,它不会起作用,也不安全。例如,将数据库命名为use myapp;
db.createUser({
user: "meteor_app",
pwd: "A_SECURE_PASSWORD",
roles: [ "readWrite", "dbAdmin" ]
})
。
mongo "mongodb://meteor_app:A_SECURE_PASSWORD@IP_ADDRESS/myapp"
现在,您退出此连接并测试新用户。
# Put this in the app.yaml file, env variables sections
MONGO_URL: "mongodb://meteor_app:A_SECURE_PASSWORD@IP_ADDRESS/myapp"
如果一切正常,您现在拥有MONGO_URL。
{{1}}