saberma

分享技术实践,创业历程

部署rails项目到heroku,并使用mongohq文档数据库

2010-12-23

简介

Heroku

heroku作为rails项目的托管商,具有功能完备、操作简单等优点,而且提供免费服务
免费项目只提供一个应用服务进程(即只同时在线1个),提供5m免费关系型数据库

MongoHQ

mongohq提供mongodb文档数据库的在线存储服务
免费帐号每个数据库有16m的存储空间,heroku已经支持mongohq,将之纳入addons中

因此,想要把迷你型或实验性的项目放到网上,又想免费,heroku是最好的选择了

这几天想要查找域名,需要批量查找5-8位拼音组合的.com域名(四位的已绝迹)
所以写了个程序批量查找有效域名,放到heroku上。

安装heroku

gem install heroku --no-ri -no-rdoc

安装其他

rails3及mongodb等环境的安装,可参考 http://github.com/saberma/shopqi

新增项目

新增rails项目

rails new test_heroku
cd test_heroku
#修改GemFile,加入必要的Gem
#...
#生成mongoid配置文件
rails g mongoid:config
git init
git add .
git commit -m "new app"

新建heroku app

先到 heroku.com 注册帐号

heroku create test_heroku
#按提示输入注册时的帐号和密码

加入MongoHQ Addon

heroku addons:add mongohq:free
#查看新增的数据库信息(MONGOHQ_URL部分)
heroku config --long

修改 config/mongoid.yml, production只留以下内容

production:
  uri: <%= ENV['MONGOHQ_URL'] %>

mongoid已经支持uri参数了,不需要像mongohq官方文档描述的那样,增加config/initialize/mongo.rb文件

部署至heroku

git push heroku master

测试

浏览器访问 http://test_heroku.heroku.com ,看是否显示rails的信息

在MongoHQ中查看数据

  1. 登录 MongoHQ
  2. 点击右边栏按钮"Add a Remote Connection"
  3. 输入Name和URI,确定

URI为heroku中通过 heroku config --long 查看到的MONGOHQ_URL内容

heroku常用命令

# 运行rake
heroku rake db:seed
# 运行控制台
# 查看运行进行
heroku ps
# 查看日志
heroku logs
# 查看参数
heroku config --long
# 重命名(子域名)
heroku rename newname
heroku console

参考资源

Heroku Docs
MongoHQ Heroku Addon
Batch Search Domains
Fcitx Phrase Pinyin
Pinyin Frequence

blog comments powered by Disqus
Fork me on GitHub