共有ホスティング環境(Dreamhostなど)でmod_railsとApacheを使用してGollumを実行する方法は?


10

Gollumは、Rubyで書かれたGitHubの新しいwikiエンジンです。ローカルにデプロイされ、Sinatraインスタンスを使用してWebインターフェイスを提供します。

Apacheとmod_rails(Phusion Passenger)を使用して、Dreamhostなどの共有ホスティング環境で実行することはできますか?

回答:


5

「config.ru」ファイルを作成し、これを追加します。

require "gollum/frontend/app"

Precious::App.set(:gollum_path, File.dirname(__FILE__))
Precious::App.set(:wiki_options, {})
run Precious::App

7

優れたガイドがあります:

https://github.com/tecnh/gollum/wiki/Gollum-and-Passenger

主なポイントは次のとおりです。

  • lib / gollum / frontendにconfig.ruを追加します
  • ドキュメントルートをlib / gollum / frontend / publicにポイントします
  • 次のconfig.ruをベースとして使用し、それに応じてWikiパスを設定します(バンドラーセットアップパーツを追加する必要がありました)。
#!/usr/bin/ruby
require 'rubygems'
require 'bundler/setup'
require 'gollum/frontend/app'

system("which git") or raise "Looks like I can't find the git CLI in your path.\nYour path is: #{ENV['PATH']}"

gollum_path = '/path/to/wiki' # CHANGE THIS TO POINT TO YOUR OWN WIKI REPO

disable :run

configure :development, :staging, :production do
 set :raise_errors, true
 set :show_exceptions, true
 set :dump_errors, true
 set :clean_trace, true
end

$path = gollum_path
Precious::App.set(:gollum_path, gollum_path)
Precious::App.set(:wiki_options, {})

run Precious::App

1

August Lilleaasの答えは正しいですが、私は古いバージョンのgollumを使用する必要があったので、Bundlerでセットアップしました。

Gemfile

source 'http://rubygems.org'

gem 'rdiscount'
gem 'gollum', '1.3.0'

config.ru

require 'rubygems'
require 'bundler'

Bundler.require

require "gollum/frontend/app"

Precious::App.set(:gollum_path, File.expand_path(File.dirname(__FILE__)))
Precious::App.set(:wiki_options, {})
run Precious::App

また、Passengerが必要publicとするため、ディレクトリとを作成することも忘れないでtmpください。

しかし、私は別の問題に遭遇しました。これがgitwebserver-userのパスにあることを確認する必要があります。私にはこれは当てはまりませんでした、そして残念ながらエラーメッセージはありません、あなたはいつも新しいページを作成するページに行き着くだけです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.