AWS RDSの無料利用枠を活用!Bitnami RedmineをEC2+RDSで稼働させる方法

スポンサーリンク

Redmineのテーブルを生成

「database.yml」を変更後に、rakeコマンドを実行してテーブルを生成します。

database.ymlの変更

「(インストールディレクトリ)\apps\redmine\htdocs\config」にある「database.yml」をテキストエディタで開いて、次のように変更します。

production:
adapter: mysql2
database: データベース名
host: エンドポイント
username: マスターユーザー名
password: マスターパスワード
encoding: utf8
port: ポート番号

rake db:migrateの実行

データベースにRedmineのテーブルを生成するため、rakeコマンドを実行します。

rake db:migrate RAILS_ENV=production

「rake aborted!」が返ってきました!失敗です。「今のrakeのバージョンは10.1.0だが11.1.2が必要」とのことです。このエラー、バージョンの違いこそあれ、Bitnami Redmineでは毎度のことですね。

手作業でrakeのGemをインストールするため、https://rubygems.org/で「rake」を検索して「11.1.2」をダウンロードしてきました。

「C:\Bitnami\redmine」フォルダにダウンロードしたGemファイルを保存して、次のコマンドでインストールを実行します。

gem install rake -v 11.1.2

インストールできたので、もう一度rakeコマンドを実行すると、今度は大量のログが出力されました。上手く生成できたようです。

なお、この時、Redmineのシステム管理者(Bitnami Redmineのインストール時に決めたアカウント)が初期ユーザーとして登録されています。

マスターユーザーでMySQL(RDS)にログインして、テーブルが作成できているか、確認してみましょう。

use redminedb;
show tables;

Redmine用アカウントを作成

MySQLに、Redmine用のアカウントを作成します。ユーザー名とパスワードを自由に決めてください。ぼくはユーザー名を「bitnami」、パスワードを「tokyo@03」にしました。

database.ymlの変更

「(インストールディレクトリ)\apps\redmine\htdocs\config」にある「database.yml」をテキストエディタで開いて、「username」と「password」をRedmine用アカウントに変更します。

production:
adapter: mysql2
database: データベース名
host: エンドポイント
username: Redmine用アカウントのユーザー名
password: Redmine用アカウントのパスワード
encoding: utf8
port: ポート番号

MySQLにアカウントを登録

「database.yml」に記載したアカウントを、MySQLに登録します。EC2インスタンスからログインするので、IPアドレスはEC2インスタンスのプライベートIPです。IPはリモートデスクトップの右上にも表示されています。

grant usage on *.* to ‘ユーザー名’@’IPアドレス’ identified by ‘パスワード’;
grant all privileges on データベース名.* to ‘ユーザー名’@’IPアドレス’;

Redmineの起動確認

サービスの再起動

Bitnami Redmineの管理画面にある[Restart All]ボタンをクリックして、Redmineのサービス一式を再起動します。

ローカルのデータベースにはアクセスしないので、「MySQL Database」は再起動の必要はありませんが、ワンクリックで済むので、まとめて再起動しています。

Redmineへのアクセス

起動したら、自宅PCのWebブラウザから、Windowsサーバー(EC2)のRedmineにアクセスしてみましょう。

ログイン画面を表示して、Redmineのシステム管理者でログインします。

無事ログインできました!これで作業は完了です。お疲れさまでした。

まとめ

手順は結構長めですがマウスによる操作が多く、内容は比較的簡単でした。今回のポイントをまとめると次の三つになります。

  • DBインスタンスの文字コード
  • Widowsサーバー(EC2)からMySQL(RDS)へのログイン
  • Redmineデータベースのセットアップ

まだ、不要となったEC2内のMySQLの削除や、それに伴うBitnami Redmineの管理画面の調整などが残っています。これらについては、また別の記事で紹介していきます。