rubygems不会在openshift中推送时安装

时间:2014-02-19 13:53:40

标签: ruby sinatra openshift

我正在尝试在Openshift中部署一个需要一些宝石的应用程序,当我通过git推送时,如何让Openshift安装它们?

以下是我的config.ru文件目前的样子:

require 'rubygems'

require './app.rb'

run Sinatra::Application

至于app.rb,它需要以下宝石:

require 'sinatra'
require 'redcarpet'
require 'stringex'
require 'data_uri'

任何想法我在这里做错了什么?提前谢谢!

2 个答案:

答案 0 :(得分:2)

你可能需要将它们添加到Gemfile中,如:

# Gemfile
source 'http://rubygems.org'

gem 'sinatra'
gem 'redcarpet'
gem 'stringex'
gem 'data_uri'

并在推送生成Gemfile.lock

之前在本地运行bundle

答案 1 :(得分:1)

为您的应用

使用Bundler Gemfile中的

gem 'sinatra'
gem 'redcarpet'
gem 'stringex'
gem 'data_uri'

在config.ru中

require 'rubygems' 
require 'bundler'  

Bundler.require  
require './my_app' 
run Sinatra::Application

使用rackup启动服务器,并通过Bundler加载Sinatra。

$ rackup