GitLabをreverse proxyで動作させる
http://gitlabhq.com/ のインストールは罠が多い。失敗を何度か繰り返した後に、結局この https://github.com/gitlabhq/gitlabhq/wiki/V2.0-easy-setup-for-ubuntu とおりに一字一句やればよい。Ubuntu 10.04 LTSで確認。この文書には書いていないがzlib1g-devをインストールしておかないと、ruby1.9がzlibなしになってしまい、うまく動かない。ちなみに"git"と"gitlabhq"というuserを追加する。他のドキュメントはここを省略しているので、"git"というuserのみでやろうとするとハマる。
次にwebrickで動作しているこのGitLabアプリをapacheを通して外から見えるようにしたい。ここでまた色々な罠が。最終的には、現バージョンのRails3(3.1.3)でURLにprefixをつけるには
http://stackoverflow.com/a/7367886
が正解。config/routes.rbに
Gitlab::Application.routes.draw do scope "/git" do ...略... end end
"scope"と"end"の二行を、内側に追加する。その上で、apacheのreverse proxyの設定は
ProxyPass /git http://localhost:3000/git ProxyPassReverse /git http://localhost:3000/git ProxyPass /assets http://localhost:3000/assets ProxyPassReverse /assets http://localhost:3000/assets
とする必要がある(example.com/gitでアクセスする場合)。後者の設定は/asstes配下の画像ファイルやJSファイルのために必要。routes.rbを上記のように書き換えても、/assets配下のURLは。。。うーん。
magic fileがないみたいなエラーがでる場合
sudo gem install charlock_holmes
で、明示的に"charlock_holmes"すればよい。
Comments
No comments.