`
lzqustc
  • 浏览: 210956 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

在Heroku上部署(托管)你的Rails应用(上)

阅读更多

Heroku 是Ruby on Rails的托管提供商,提供运行Ruby on Rails应用的整套环境。和传统的托管商相比,他并不仅仅是提供一个服务器给你,而且提供有趣的工具和接口来帮助你更加容易的工作,使你从繁重的安装、配置、管理和保证服务器安全中解脱出来。

Heroku是用git来管理项目的,另外还要用到ssh来登录,这两个工具在Linux环境下的安装方法如下:

git安装

ssh安装

当然要使用Heroku,你就要到其 官方网 注册一个账号;

以上工作完成后,并可进行如下操作,将你的Rails应用托管到Heroku:

 

以来内容转自: http://hi.baidu.com/haifreeidea/blog/item/e09279c53b7d06c338db49c9.html

 

 

①、$ gem install heroku

②、先要生成一个公钥,使用命令:
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/user/.ssh/id_rsa.
Your public key has been saved in /home/user/.ssh/id_rsa.pub.
The key fingerprint is:
a6:88:0a:bb:74:70:c6:e0:d5:49:65:e3:04:d5:6c:3e user@workstation.local

把公钥加入到Heroku
$ heroku keys:add
Uploading ssh public key /home/user/.ssh/id_rsa.pub

如果想删除公钥,可以用命令:
$ heroku keys:remove user@workstation.local

查看公钥,用命令:
$ heroku keys

③、现在就可以创建一个项目了(预先要安装好rails)。
$ rails myapp            (如果是已有的应用,这一步可以跳过)

$ cd myapp
$ git init

$ git add .
$ git commit -m "my first commit"

Created initial commit 5df2d09: my first commit
44 files changed, 8393 insertions(+), 0 deletions(-)
create mode 100644 README
create mode 100644 Rakefile
create mode 100644 app/controllers/application.rb
...

④、把这个项目创建到Heroku上。
$ heroku create myapp     
Enter your Heroku credentials.
Email: user@example.com
Password:
Uploading ssh public key /home/user/.ssh/id_rsa.pub
(当第一次运行heroku命令时,要求输入Email,password,这个是你在Heroku注册的Email和密码,以便创建~/.heroku/credentials文件,这个文件记录了你输入的用户名和密码,以后就不再需要输入了。)

⑤、接下来运行:
$ git push heroku master
Counting objects: 65, done.
Compressing objects: 100% (58/58), done.
Writing objects: 100% (65/65), 80.54 KiB, done.
Total 65 (delta 14), reused 0 (delta 0)

-----> Heroku receiving push
-----> Rails app detected
       Compiled slug size is 0.1MB
-----> Launching....... done
       App deployed to Heroku

To git@heroku.com:vivid-mountain-91.git
* [new branch]      master -> master

⑥、再做一个数据库迁移:
$ heroku rake db:migrate

现在就可以像平常使用Rails一样编写程序了。

更新代码可以用:
$ git push heroku
将本地数据更新到Heroku网站上:
$ heroku db:push
(这个命令会使用taps,如果没有安装,请先安装。)

要打开网页浏览,就可以用
$ heroku open

参考资料:

http://heroku.com/

Heroku和Morph AppSpaces:两个Rails托管的新解决方案

http://hi.baidu.com/haifreeidea/blog/item/e09279c53b7d06c338db49c9.html

 

http://fanqiang.chinaunix.net/a6/b9/20010625/170400665.html

分享到:
评论
2 楼 witcheryne 2010-12-25  
要是早看到你写的这篇,我就不用再写一篇了。
很详细...
1 楼 fireflyman 2010-04-24  
Ths 

相关推荐

    make_demo:make gem 的演示和文档。 部署在 heroku、db 上的 Rails 应用程序

    部署在 heroku、db 上的 Rails 应用程序" 提供了几个关键的 IT 知识点,包括: 1. **Make Gem**: 在 Ruby 开发中,`gem` 是一种打包和分发代码的方式,它允许开发者创建自己的库或工具,方便他人使用。`make_demo`...

    Heroku-Rails:享受 Heroku 和 Rails 带来的乐趣。 (现在死了)

    在实际操作中,开发者会将Rails应用的代码托管在版本控制系统如Git上,然后通过Heroku CLI或Heroku Dashboard将其推送到Heroku服务器。这个过程中,开发者需要配置Gemfile(管理依赖)、Procfile(定义进程类型和...

    ustream-heroku-源码.rar

    本篇文章将深入探讨在名为"ustream-heroku-源码.rar"的压缩包文件中所包含的源码,帮助读者理解如何在Heroku平台上部署和运行Ustream应用程序。 首先,Ustream是一款实时流媒体服务,允许用户在线直播和观看视频...

    stanford-library-metadata:Heroku上托管的在线工具

    【标题】"stanford-library-metadata:Heroku上托管的在线工具" 涉及到的知识点主要集中在两个核心领域:斯坦福大学图书馆元数据处理和使用Heroku平台进行Web应用部署。 1. **斯坦福大学图书馆元数据**: 斯坦福...

    myapp_on_heroku:这是我的第一个应用程序,已成功部署到heroku

    标题中的“myapp_on_heroku”表明这是一个在Heroku平台上部署的应用程序,而描述中的“Ruby on Rails教程”和“您好,世界!”暗示这是一款使用Ruby on Rails框架开发的简单示例应用,通常用于教学或新手入门。Ruby ...

    storytime-example:用于部署到 Heroku 按钮的骨架应用程序

    **故事时间示例:Heroku 部署按钮的骨架...通过学习和理解这个项目,开发者不仅可以熟悉Ruby on Rails的架构,还能掌握在Heroku上部署应用的流程,这对于任何想要在云平台上发布Web应用的人来说都是宝贵的实践经验。

    Ruby-Publify一个构建在Rails之上的自我托管We发布平台

    **Ruby-Publify:基于Rails的自我托管Web发布平台** Ruby-Publify是一个开源的、基于Ruby on Rails的内容管理系统(CMS),它允许用户创建和管理自己的博客或网站,无需依赖第三方服务。作为自我托管的解决方案,...

    rails-4.2.0-gems

    9. 最后,部署到生产环境(如Heroku、AWS或自托管服务器)时,`rails_setup`可能包含部署策略和配置指南。 总的来说,Rails 4.2.0和Ruby 4.2.0的组合为开发者提供了强大而稳定的开发平台,而`rails_setup`文件则是...

    补丁resque与Heroku进程信号兼容_Ruby_Shell_下载.zip

    如果你在Heroku上运行Resque并且遇到类似的问题,应用这个补丁将有助于解决这些问题,确保你的后台任务处理系统的健壮性和可靠性。在部署之前,记得在测试环境中充分测试补丁,以验证其效果并避免引入新的问题。

    is_heroku:Heroku?

    在Ruby开发中,Heroku是常见的部署选择,因为它的易用性和对Rails应用的良好支持。首先,我们需要确保本地环境已经安装了Heroku CLI,可以通过运行`heroku --version`来验证。如果返回版本信息,那就意味着安装成功...

    Beginning Rails 4

    - **选择合适的托管平台**:如 Heroku、AWS 等。 - **配置生产环境**:设置环境变量、优化性能等。 - **持续集成/持续部署(CI/CD)**:自动化测试和部署流程。 #### 附录 A:数据库 101 对于没有数据库背景的读者...

    rails-intro:Rails简介分配的基本代码和规范

    在本作业中,您将向现有的简单Rails应用程序添加功能,并将结果公开部署在Heroku云托管服务上。 我们将针对您所部署的版本运行实时集成测试。 一般建议:这项作业涉及以各种方式修改RottenPotatoes。 Git是您的朋友...

    deploy-it:轻松托管您自己的私人Heroku;)

    综合以上信息,我们可以推断`deploy-it`是一个基于Ruby和可能与Dokku相关的项目,它的目标是帮助用户在自己的服务器上建立一个类似Heroku的环境,特别适合那些希望在私有环境中部署Ruby on Rails应用的开发者。...

    ruby on rails

    11. **Heroku**:一种流行的云平台,可快速部署和托管Rails应用,使用Git进行版本控制和部署。 在实际开发中,你需要熟悉Rails的路由、控制器、模型、视图和辅助方法等基本概念,学习如何创建和操作数据库表,理解...

    heroku

    你可以通过Heroku CLI或管理界面添加数据库,并在应用中配置相应的连接信息。 8. **运行和管理进程**:Heroku使用“ dynos ”来运行应用进程。你可以使用`heroku ps:scale`命令调整 dyno 的数量,以应对不同的流量...

    Wrox - The Art of Rails (May 2008)

    在部署方面,书中可能会介绍如何将Rails应用部署到各种服务器环境,如Heroku、AWS或自托管的服务器上,以及如何配置Nginx或Apache作为反向代理。还会涵盖持续集成和自动化测试,如使用Jenkins或Travis CI,确保代码...

    rails-documentation-1-2-1.zip

    9. **部署**:学习如何将 Rails 应用部署到服务器,如使用 Capistrano 进行自动化部署,或者在 Heroku 等云平台进行托管。 10. **ActiveRecord 查询接口**:掌握 ActiveRecord 提供的查询语言,包括链式查询、关联...

    Heroku-salary-

    Heroku是一个流行的云平台,它主要被用来部署和管理Web应用程序,尤其是基于Ruby on Rails、Node.js、Java、Python等语言开发的应用。标题"Heroku-salary-"可能暗示了这个话题是关于在Heroku平台上使用Python技术栈...

    cashcash-rails:Ruby on Rails开源应用程序,用于资金管理

    有关如何在像Heroku这样的生产系统上部署项目的注释,请参阅部署。先决条件您将需要在系统上安装Ruby on Rails 5.2.3。 我们建议您遵循。正在安装正确安装和配置Ruby on Rails 5.2.3之后,您可以执行以下操作: git...

    rubyrails生态系统

    云服务商如 AWS、Heroku 和 Google Cloud Platform 等提供了方便的 Rails 应用托管服务。这些服务简化了运维工作,让开发者更加专注于开发本身。 #### 技术工具 除了基础的 IDE 和编辑器之外,还有许多工具可以...

Global site tag (gtag.js) - Google Analytics