プロジェクト管理ツールRedmineの導入

Ruby On railsで開発されているプロジェクト管理ツールRedmineをDocker環境に導入します。プロジェクト管理ツールとしては、以前Tracを自宅SVのLAMP環境に導入し、バージョン管理ツールのSubversionと連携して運用していました。ですが落雷による停電で消失してしまい今はありません。

今回はプロジェクト管理ツールとしてTracではなく巷で評判のRedmineを、ソース管理ツールはSubversionではなくGitHubのOSS版かつ自宅サーバで運用可能なGitlabと連携予定です。まずは手始めにRedmine環境を構築します。

1.目標とするRedmineのURL

マニュアル通りの手順でRedmineを導入すると参照するWebページはポート3000になります。

例)URLが「hoge3.com」の場合、URLは「http://hoge3.com:3000」

これはスマートではないので、:3000無しのサブドメインでアクセスできるようにします。以前導入した「jwilder/nginx-proxy」にて上記ポート3000にリバースプロキシされるようDocker環境を構築します。

目標とするredmineのURL)「http://redmine.hoge3.com」

2.Dockerコンテナ連携方針

RedmineのDockerイメージは安定性と安全性を考慮してオフィシャル版を使用します。使用するDBはmysqlとしこちらもオフィシャル版です。redmineコンテナとmysqlコンテナからデータボリュームをマウントしコンテナを再起動してもRedmineに登録したデータが引き継がれるようにします。

(1)データボリューム

data/mysqlディレクトリをmysqlコンテナにマウント

data/redmine/filesディレクトリをRedmineコンテナにマウント

(2)フォルダ構成

Dataディレクトリ以外のディレクトリはダミーです。

3.Docker-Composeの設計
(1)コンテナサービス一覧
コンテナサービス名 役割 関連サービス
sqldata mysql用のデータボリュームコンテナ dB(マウント)
redminedata Redmine用のデータボリュームコンテナ redmine(マウント)
redmine redmineタスク db(リンク)
db mysqlタスク
(2)docker-compose.yml

以下が作成したdocker-compose.ymlです。ドメインとパスワードは変更していますがそれ以外は実運用版です。

【Redmine設定】

11行目から24行目までがredmineコンテナの設定です。

19行目にある環境設定の「REDMINE_DB_MYSQL」キーがredmineコンテナからmysqlを使用する設定です。mysqlコンテナのサービス名「db」を指定します。

20行目の「REDMINE_DB_PASSWORD」キーがmysqlコンテナで指定しているmysqlのrootパスワード値「”rootpass”」になります。30行目の値と同一です。

21行目の「VIRTUAL_HOST」キーにはredmine用のURLを指定します。ここでは前述の通り「redmine.hoge3.com」を指定しています。VIRTUAL_HOSTキーは「jwilder/nginx-proxy」がリバースプロキシする際に参照します。

22行目の「VIRTUAL_PORT」キーにはredmineがデフォルトで設定する参照ポート番号「3000」を指定します。このキーも同様に「jwilder/nginx-proxy」がリバースプロキシする際に参照します。

【mysql設定】

25行目から36行目までがmysqlコンテナの設定です。

27行目の「command」キーの値はredmineでmysqlを使用する際に必要となる日本語化の設定です。これが無いとredmineで日本語文字列を登録できません。

31行目の「MYSQL_DATABASE」キーは起動時に作成するDB名になります。今回はredmineコンテナが必要とするDB名の「redmine」を指定します。

今回は新規追加したredmineコンテナと変更したmysqlコンテナの設定についてのみ説明しました。これ以外の設定については以下の記事を参照してください。

DockerコンテナにNginxリバースプロキシを導入

Docker-Composeでnginx,php,mysqlの3コンテナを連携する

4.Redmineの動作確認
(1)Docker-Composeの起動と確認

Docker-Compose.ymlファイルのあるディレクトリに移動し以下のコマンドでコンテナを起動します。

docker psなどで起動確認が出来たら次に進めます。

(2)リバースプロキシ設定確認

「jwilder/nginx-proxy」コンテナのnginx設定ファイルdefault.confにredmineコンテナへのリバースプロキシ設定が追加されているかコンテナに接続して確認します。

/etc/nginx/conf.d/default.confの内容抜粋

上記の通り「http://redmine.hoge3.com」へのアクセスがredmineコンテナの3000番ポートへ転送されていることが分かります。

(3)Redmine接続確認

webブラウザからhttp://redmine.hoge3.comで接続します。

接続できました。

(4)ユーザー登録確認

mysqlの日本語設定が正常であるかどうかユーザー登録をして確認します。

(3)画面右上の登録するを選択し表示されるユーザー情報に日本語を含めて送信します。

これで正常に登録できればmysqlへの日本語設定は問題ありません。

以降Redmineを使用できます。

5.参考にさせて頂いたサイト

(改訂版) Docker でオフィシャルな GitLab イメージと Redmine イメージのコンテナを連携させる

ArchLinux上で運用していたRedmineをDockerコンテナに移行したときのメモ

dockerでRedmineを起動する

ありがとうございます。

スポンサーリンク
レクタングル大広告




レクタングル大広告




シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
レクタングル大広告