Як запустити Gollum за допомогою mod_rails та Apache у спільному хостинг-середовищі (наприклад, Dreamhost)?


10

Gollum - новий вікі-движок GitHub, написаний Ruby. Розгорнута локально, для використання веб-інтерфейсу використовується екземпляр Sinatra.

Чи можливо запустити його в спільному хостинговому середовищі, наприклад, Dreamhost за допомогою Apache та mod_rails (Phusion Passenger)?

Відповіді:


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

Основні моменти:

  • додати config.ru до lib / gollum / frontend
  • Наведіть корінь документа на lib / gollum / frontend / public
  • Використовуйте наступний config.ru як базу, встановіть вікі-шлях відповідно (мені довелося додати частину налаштування постачальника)
#!/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

Відповідь Августа Лілліаса правильна, проте мені потрібно було використовувати старішу версію 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

Також не забудьте створити каталоги publicі tmp, як цього вимагає Пасажир.

Однак я зіткнувся з іншою проблемою. Ви повинні переконатися, що gitце на шляху веб-сервера-користувача. Для мене це було не так, і, на жаль, немає повідомлення про помилку, ви просто завжди опиняєтесь на сторінці, щоб створити нову сторінку.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.