- 一种基于git的命令行式的ruby on rails应用部署工具集
- 命令行工具集相当厉害但web界面的管理方式美观有余功能不足
- 支持多种版本的rails,目前到2.3.3
- 关键是有免费的5M空间可以用
先说这么多,下面介绍怎样使用Heroku,环境是ubuntu 9.04 Server。
一、安装Heroku
由于Heroku使用git方式push内容,所以先装git,什么是git?就不介绍了。
然后通过gem方式安装Heroku:
同时为了使用可以导入导出heroku数据库,我们再装一下tabs,即使你不装,在使用到这个命令的时候也会提示你装:
安装完毕后,可以直接输入heroku查看帮助。下面介绍怎样使用heroku,切记使用之前先去doc里看看现在支持到那个版本的rails了。
二、使用Heroku
目标:创建一个应用并加入一个Post的scaffold
整个过程还可以参考heroku提供的快速指南。但是没有介绍ssh key的生成。
先生成ssh密钥对,安装ubuntu时已经集成了ssh服务,所以不介绍安装:
会提示输入一些路径什么的,全部默认即可。这样会在~/.ssh/下生产密钥对。
这里先使用rails创建一个应用并加入git:
1
2
3
4
5
6
7
|
cd
rails weblog
cd
weblog
script
/generate
scaffold Post title:string content:text
git init
git add .
git commit -m
"add a new app"
|
应用准备好了,下面使用Heroku:
1
2
3
4
5
6
7
|
heroku create *****
输入你在Heroku注册的用户名,不要说还没有,快去注。
Email: ddr888@example.com
Password:
Uploading
ssh
public key ~/.
ssh
/id_rsa
.pub
Created http:
//
*****.heroku.com/ | git@heroku.com:*****.git
Git remote heroku added
|
*****处如果没有值,Heroku会自动为你生成一个,这样就可以去http://*****.heroku.com/看看,是不是已经有首页了?但是里面还没有应用,下面把你刚才创建的应用添加进去,只要一行代码:
这里我遇到点问题,由于企业防火墙没有开git端口,让我一直连接不上Heroku的服务器,这里需要git端口:9418. 现在看到Heroku在动了吧,稍等。。。上传完毕:
1
2
3
4
5
6
7
8
9
10
|
Counting objects: 7,
done
.
Compressing objects: 100% (4
/4
),
done
.
Writing objects: 100% (4
/4
), 402 bytes,
done
.
Total 4 (delta 3), reused 0 (delta 0)
-----Heroku receiving push
-----Rails app detected
Compiled slug size is 80K
-----Launching.......
done
http:
//ddr888
.heroku.com deployed to Heroku
|
想知道每个过程是做什么的,去查文档。然后是把你的schema中的东西同步进Heroku提供的PostgreSQL 8.3.5中。
这个命令是不是很熟悉,但是不要再做create了,因为Heroku已经帮你做了。然后打开应用:
看到熟悉的rails欢迎界面了吧,然后在URL后加上posts: http://ddr888.heroku.com/posts,怎么样看到脚手架了吧,添加两个试试,very good!
最后补充一句,在本地更新代码后使用下面的命令同步进Heroku,如果改了数据库也不要忘了迁移:
1
2
|
git commit -a
git push heroku
|
总结
本文介绍了Heroku的安装和基本使用,其强大的功能有待我们一起去发现。虽然它是收费的,但是毕竟目前还是有初级应用的免费空间可以用(5M),学习ruby on rails也有地方实验,还不错。快试试吧。