Archives

ec2上のRedmineでプロジェクトを管理しよう!人生という名のp(ry

前回はBitNamiのインストーラを使いましたが、今回は普通にインストールします。

※2013-10-23追記:このやり方だとredmineのdevバージョンがインストールされるみたいなので、svn利用に変更しました。あと2.3.3でも大丈夫っぽいのでそっち使ってます。

インストールしたいのは、

  • Ruby
  • Redmineと必要なbundle
  • redmine_backlogs: v1.0.5    ←    ruby: 1.9.3, Redmine: 2.2.4 or 2.3.2が必要
  • nginx
  • MySQL

です。バージョンの指定がハマりどころですが、言われたら直すの繰り返しでもなんとかなります。

ec2を立ち上げてsshで接続するまではドットインストールのAmazon Web Services入門の#5までを参考に。

まずはいろいろ必要なものと、nginx、MySQLをインストールします。ec2でルートになるには”sudo su”でオッケーです。

$ sudo su
// 注: #はコメントアウトされてしまうので代わりに?を用いてます。
? yum -y groupinstall "Development Tools"
? yum -y install openssl-devel readline-devel zlib-devel curl-devel
? yum -y install mysql-server mysql-devel
? /etc/init.d/mysqld start
? yum install -y nginx
? service nginx start

Ruby 1.9.3のインストールはここを参考にしました。

? yum -y install libxml2-devel
? yum -y install libxslt-devel
? cd /tmp
? wget http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz
? tar zxvf yaml-0.1.4.tar.gz
? cd yaml-0.1.4
? ./configure
? make
? make install

? cd ../
? wget ftp://core.ring.gr.jp/pub/lang/ruby/1.9/ruby-1.9.3-p392.tar.gz
tar xzf  ruby-1.9.3-p392.tar.gz
? ./configure --with-opt-dir=/usr/local --enable-shared --enable-option-checking
? make
? make install

/usr/local/bin/にインストールされてしまったので/usr/bin/にシンボリックリンクを張ります

? mv /usr/bin/ruby /usr/bin/ruby18
? ln -s /usr/local/bin/ruby /usr/bin/ruby
? ruby -v
    ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-linux]

rubygemsとbundleのインストール

? wget http://rubyforge.org/frs/download.php/76729/rubygems-1.8.25.tgz
? tar xzvf rubygems-1.8.25.tgz
? cd rubygems-1.8.25
? ruby setup.rb
? gem -v
    1.8.25
? yum -y install ruby-irb
? gem install rdoc
? gem install bundler

やっとredmineのインストールです。場所はBitNamiを真似て/opt/に置きます。

? cd /opt/
? svn co http://svn.redmine.org/redmine/branches/2.3-stable redmine-2.3
? mv /opt/redmine-2.3 /opt/redmine
? bundle install --path vendor/bundle --without development test rmagick postgresql sqlite

以降のMySQLとかnginxとかの設定は下のページのまま行えばよいかと思います。

さくらVPSで nginx + MySQL + Unicorn + Redmine の運用 | コードを舐める日々

そんで、僕の場合は既にRedmineを使っていたデータがあるので、公式情報を参考にしてそれのリカバリをします。filesディレクトリを置き換えて、DBにバックアップしてたdumpをブッ込めば完成です。

backlogsのインストールはredmineのインストール後、公式の通りにやればできます。

Redmine Backlogs :: Installation

あと、Redmineはそのままだと限りなくダサいので、テーマをインストールすると良いと思います。だいたい見た感じではredminecrmのテーマがかなりいいデザインです。crm用のプラグインも提供されてますが、必要ないのでテーマだけもらいます。

http://redminecrm.com/pages/redminecrm-theme

ダウンロードしたzipを/opt/redmine/public/themesに展開して、管理> 設定> 表示> テーマで変更できます。

backlogsの使い方やその心は@ITの連載がいい感じです。

かんばん!~もし女子高生がRedmineで「スクラム」開発をしたら

これからredmine上でいろんなサービスとの連携とかできたら楽しそうだな―と思います。

amazon ec2でRedmine(BitNami編)

あープロジェクト管理してーわー
そんなお前 見込みアリ

というわけでRedmineを使いたいです。でも余分なパソコンはありません。

でも実は誰でも1台だけ無料で使えます。そう、amazon ec2のマイクロインスタンスならね。

しかしRedmineのインストールはRubyのバージョン指定とかなんやらでやたらと面倒臭いです。以前試行錯誤の果てにec2上でnginx+unicornで動かしていたのですが、もうちょっと設定の過程をすっきりさせたくて再インストールしようかなというところでさっそうと現れたのがBitNamiです。

http://bitnami.com/

なんでもワンクリックでRedmineやwordpressやjenkins等々をec2上に構築してくれるというではないですか。

このページの”Cloud Server”のとこをクリックするだけの簡単な構築作業です。

とはいえこれだけだと余りにも過程が不透明なので、インストーラーを使ってインストールしてみます。

まずec2のマイクロインスタンスを立ち上げてsshで接続するところまではドットインストールのAmazon Web Services入門の#5までを参考に。

マイクロインスタンスのメモリは613MBしかなく、RedmineのBitNamiインストーラを使うには2GBぐらい要るよと言われるので、まずはスワップ領域を確保します。

$ sudo dd if=/dev/zero of=~/swap.0 bs=1024 count=1048576
    1048576+0 records in
    1048576+0 records out
    1073741824 bytes (1.1 GB) copied, 28.9288 s, 37.1 MB/s
$ sudo mkswap ~/swap.0
    スワップ空間バージョン1を設定します、サイズ = 1048572 KiB
    ラベルはありません, UUID=c54b30ec-1727-423e-8f55-ce585a2cffe9
$ sudo swapon ~/swap.0

スワップ領域を1GB確保しました。インストールにはこれで充分でした。確保できていることを確認します。

$ sudo swapon -s
    Filename				Type		Size	Used	Priority
    /home/ec2-user/swap.0                   file		1048572	0	-1

そしたらインストーラをとってきて実行するだけです。超簡単。

$ wget http://bitnami.com/redirect/to/24967/bitnami-redmine-2.3.3-1-linux-x64-installer.run
$ chmod 755 bitnami-redmine-2.3.3-1-linux-x64-installer.run
$ sudo ./bitnami-redmine-2.3.3-1-linux-x64-installer.run

設定に関していろいろ聞かれますが、”English”と”Y”で答えとけば問題ないでしょう。Redmineの通知用のメールアドレスを登録したい場合はインストール中にできます。

これでインストールは終了です。簡単すぎて涙が出ます。

redmineのルートは/opt/redmine-2.3.3-1/になります。MySQLとか必要なものは全部この下にインストールされます。なのでデータベースにアクセスするには、

$ sudo mysql -uroot -p -S /opt/redmine-2.3.3-1/mysql/tmp/mysql.sock mysql

みたいな感じになります。面倒ですね。

普通に使う分にはこれで問題ないのですが、こういうローカルなインストールはなんか気持ち悪くて、バージョンの変更とかいうときに非常に面倒じゃないかと思って、結局またnginx+unicornを使うことにしました。それに関しては次の記事で。