标签:javascript mongodb meteor deployment
事实证明,部署到一些通用VPS是与流星部署完全不同的体验.我几乎已经把它搞砸了,但作为一个Mongo n00b,我遇到了一件事:OpLog拖尾.这是迄今为止的信息:
发行版:Scientific Linux发行版6.4(Carbon)
$mongod --version
db version v2.4.6
$node --version
v0.10.33
我正在使用Meteor 1.0.和乘客4.0.53.
好消息是更改到deploy目录(我作为一个bundle部署)并执行:
$node bundle/main.js
让我在端口3000上访问应用程序,但在开发模式下,因此不会拖尾OpLog(我认为).
所以经过一系列的适应和启动后,我用这个来操纵乘客:
<VirtualHost *:80>
ServerName sc.mywebapp.com
DocumentRoot /home/deploy/meteor_apps/mywebapp/public
PassengerStickySessions On
SetEnv MONGO_URL mongodb://0.0.0.0:27017/meteor
SetEnv MONGO_OPLOG_URL mongodb://0.0.0.0:27017/local
SetEnv ROOT_URL http://sc.mywebapp.com
# Set these ONLY if your app is a Meteor bundle!
PassengerAppType node
PassengerStartupFile bundle/main.js
PassengerAppRoot /home/deploy/meteor_apps/mywebapp
</VirtualHost>
我不得不将这些添加到裸机httpd.conf中:
LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p484/gems/passenger-4.0.53/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p484/gems/passenger-4.0.53
PassengerDefaultRuby /usr/local/rvm/wrappers/ruby-1.9.3-p484/ruby
PassengerNodejs /usr/local/bin/node
</IfModule>
现在好消息是乘客正在努力.但由于它处于生产模式,它想要关闭OpLog.我收到以下错误:
Error: $MONGO_OPLOG_URL must be set to the 'local' database of a Mongo replica set
所以,记住我是一个MongoDB N00b,我需要做什么才能获得一个Mongo副本集的本地数据库?这将是一个小型,低流量的网站 – 它可能会增长,但我只想让我的初始部署.
有什么神奇的步骤?
谢谢!!
解决方法:
神奇的步骤是拥有正确的用户权限,并在oplog连接字符串中提供authSource参数.
创建您的用户(MongoDB 2.4):
$mongo -u YourExistingAdminUserName -p YourExistingAdminPassword 127.0.0.1/admin
cluster:PRIMARY> db.addUser({user: "oplogger", pwd: "PasswordForOplogger", roles: [], otherDBRoles: {local: ["read"]}})
创建您的用户(MongoDB 2.6):
$mongo -u YourExistingAdminUserName -p YourExistingAdminPassword 127.0.0.1/admin
cluster:PRIMARY> db.createUser({user: "oplogger", pwd: "PasswordForOplogger", roles: [{role: "read", db: "local"}]})
然后设置您的oplog URL:
MONGO_OPLOG_URL=mongodb://oplogger:PasswordForOplogger@127.0.0.1/local?authSource=admin
Extra details are in the Meteor Wiki Oplog Driver article.
标签:javascript,mongodb,meteor,deployment 来源: https://codeday.me/bug/20190824/1712694.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。