redmineを1.3.3から2.5.1にUpdateして色々大変だった話
事の発端
本学のプロジェクトで使用しているRedmineのバージョンが1.3.3だったので,最新版にアップデートしたかった.
Backlogsとか入れてみたかったしね.
流れ
まず,もともと入っていたRubyが1.8.7 だった.
最新のRedmineでも,サポート範囲内だったと思うけど,作ってるプロダクトが2.0.0で作られてたので,将来的にここにサンプルとかもデプロイする運用を考えたかったので,バージョンを上げたい.
ただ,上書きはちょっと怖いので,rvmを利用することに.
適当に,
$ sudo apt-get install ruby-rvm
とかやっていたら,なんだかうまく行かなかった.そこで,ちゃんと調べてインストールしてみることに.
この後,参考にしたのは以下のサイト.
RedmineをUbuntu 12.04 LTSにrvmを使ってインストールする - espresso3389の日記
Install Ruby on Rails using rvm on Ubuntu 12.04 - Stack Overflow
user@host:~$ \curl -L https://get.rvm.io | bash -s stable
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 184 100 184 0 0 215 0 --:--:-- --:--:-- --:--:-- 293
100 20511 100 20511 0 0 21206 0 --:--:-- --:--:-- --:--:-- 472k
It looks you are one of the happy Ubuntu users,
RVM packaged by Ubuntu is old and broken,
follow this link for details how to fix:
http://stackoverflow.com/a/9056395/497756
おや,なんか失敗.しかもご丁寧に解決策が書いてあるリンクまで貼ってったので参照して無事インストール完了.
インストールが終わったので,rvmを更新.
$ sudo rvm get head $ sudo rvm reload
パスが通っていないと怒られた.sudoすると,環境変数が引き継がれないらしい.
sudoでPATHなどの環境変数を引き継ぐ | Pistolfly
こちらを参考に,設定を変更.この時にvisudoしてnanoが立ち上がったのでイラッとしてnanoを削除
今度はコマンドが無事通ったので,目的のruby2.0.0をインストール.これも問題ない.
次は,rvm useを打ったんだけど,ログインコンソールでやってくださいと怒られた.
んー,理由はわからない.
$ /bin/bash --login $ rvm use 2.0.0
今度は無事成功.バージョンを確認してみたら,最新バージョンになってる.はて?
とりあえずログインしなおしてから確認.今度はOK.
次は,redmineのインストール.とりあえず,最新版を適当なディレクトリに持ってきて,現行バージョンがおいてあった場所にシンボリックリンクを貼ることにした.
インストールの際に参考にしたのは以下のサイト.
DebianでRedmine 1.3.2から2.0に更新する | kwLog
Redmine 2.5をCentOS 6.5にインストールする手順 | Redmine.JP Blog
手順に関しては,2番目の記事とほとんど手順は同じ,ただし,数カ所コケたところがあった.
一つ目は,mysqlのgemがうまく入らなかった.どうやら,1.4からmysql2というgemに切り替わったらしく,そいつを入れてあげなきゃいけないらしい.
入れようとしたけど,何故かコケた.ちょっと調べてみると,いくつか似たようなエラーを見つけた.
Rails - Ubuntuでmysql2 gemが入らない。 - Qiita
ここを参考に,無事解決.
次は,何故かdb:migrateでエラーが出る.しかもsyntax.なぜ…….
色々調べたら,該当gemを消せば直ったという記事を見つけた.(リンクどっか行っちゃいました.ゴメンナサイ)
$ gem uninstall psych
これで,無事db:migrateも完了.
あと,僕が使っているサーバはPassengerを使っているので,そこのパスもrvmの場所に切り替えてあげなきゃいけない.
rvmのpassengerをapache用にコンパイルして,設定ファイルを書き換える.
Apache上でRuby on Railsアプリケーションを動かす/Passenger(mod_rails for Apache)の利用 — Redmine.JP
ここを参考に,設定.途中何回か怒られたけど,都度apt-getで対象パッケージをインストールしてココもクリア.
最後にapacheを再起動して,無事表示されることを確認しました.
#ここまで来るのに何回も再起動して失敗してるけどね