美文网首页
在Heroku上部署Rails App

在Heroku上部署Rails App

作者: Harddddd | 来源:发表于2017-03-29 12:53 被阅读204次

https://devcenter.heroku.com/articles/getting-started-with-rails5

在Heroku平台上部署非常简单,而且Heroku提供5个免费的App部署名额,所以如果觉得常规部署Rails应用的方式太过麻烦,那么Heroku是个比较好的选择,那么Heroku部署虽然简单,但是还是有一些要注意的细节,在此记录下来。

部署前的准备工作

Heroku对于本地环境的要求:

  1. 免费的Heroku Account
  2. 本地ruby版本 >= 2.2.5
  3. 本地需要安装bundler gem install bundler

部署之前,首先要安装CLI(Heroku Command Line Interface), 以Ubuntu为例:

# Run this from your terminal.
# The following will add our apt repository and install the CLI:
sudo add-apt-repository "deb https://cli-assets.heroku.com/branches/stable/apt ./"
curl -L https://cli-assets.heroku.com/apt/release.key | sudo apt-key add -
sudo apt-get update
sudo apt-get install heroku

然后修改你的Gemfile

# 首先加上ruby版本的指定
ruby '2.3.1'
# 然后修改数据库(如果你的开发环境使用的是sqlite的话, 如果使用sqlite3会出现app crashed error), 删除
gem 'sqlite3'
# 加上
group :test, :development do
  gem 'sqlite3'
end
group :production do 
  gem 'pg'
end

然后 bundle install 生成新的Gemfile
至于为什么不能在生产环境使用sqlite3数据库,参见教程

下面开始部署的步骤

  1. 在Heroku服务器上创建一个App heroku create myApp (如果没有指定App的名称,Heroku会帮你生成一个随机的名称)
  2. 将本地的Git项目提交到Heroku的服务器 git push heroku master
  3. 现在项目已经部署好了,需要进行数据库的迁移
heroku run rake db:create
heroku run rake db:migrate
heroku run rake db:seed
  1. 在项目的根目录创建Procfile(Procfile的作用是声明启动应用需要执行的命令),如:
    web: bundle exec rails server -p 3000
    注意:文件名只能是Procfile,像Procfile.txt这种都不行,另外,必须创建在项目根目录下!
  2. 至此,项目已经部署完毕,可以执行 heroku open 访问

CLI的一些命令

  1. 打开生产环境的Rails Console heroku run rails c
  2. 查看正在运行的dyno(dyno可视为Procfile中指定的命令的一个轻量级的容器) heroku ps
  3. 查看日志 heroku logs --tail
  4. 查看Heroku config variable heroku config --app myApp
  5. 删除Heroku上的App Appheroku apps:destroy --app example

相关文章

  • Heroku上部署Rails应用常用的命令

    Heroku默认使用PostgreSQL作为关系型数据库。在将Rails部署到Heroku上,也必须使用Herok...

  • 在Heroku上部署Rails App

    https://devcenter.heroku.com/articles/getting-started-wit...

  • heroku安装及部署rails项目教程

    heroku安装及部署rails项目教程 开发了一个带数据库的小项目,部署至heroku看看效果。 安装 macO...

  • 博客

    14年用rails4.2做过一个线上博客,域名是zhengjiajun.me,部署在heroku服务器上面,现在已...

  • 用heroku部署rails应用

    首先先介绍一下heroku: 维基百科Heroku是一个支持多种编程语言的云平台即服务。在2010年被Salesf...

  • rails:将rails应用部署到heroku

    注意:对于一个新开发的项目,应该从第一步开始执行;对于一个已经部署过一次,只是程序修改后重新部署,那么只要执行第五...

  • 使用Heroku部署hello_app

    Heroku的作用简而言之,就是把Rails 应用部署到生产环境中,以便及时查看应用的状态。 首先进行以下几步走:...

  • 玩具应用toy_app

    创建toy-app应用: 参照使用Heroku部署hello_app,修改Gemfile文件,然后执行: 参照创建...

  • heroku配置rails程序

    省略部分 rails程序和heroku安装省略 预备工作 rails里config/environments/pr...

  • Heroku 使用教程

    Heroku平台 Heroku平台的灵活性极高且支持多种编程语言。若想把程序部署到Heroku上,开发者要使用Gi...

网友评论

      本文标题:在Heroku上部署Rails App

      本文链接:https://www.haomeiwen.com/subject/mersottx.html