Windows環境へのRedmineのインストール(MySQL版)

Windows環境へのRedmineのインストール(MySQL版)

本記事では、Windows環境へのRedmineのインストール方法についてご紹介します。データベースとしてMySQLを採用した内容になっています。PostgreSQL版については以下の記事を参照ください。

       
    Redmineクラウドサービス

    以前まではWindows環境へのRedmineのインストールと言えばBitnamiが主流でした。しかし、BitnamiRedmine Windowsインストーラーの提供を終了してしまったため、簡易的なインストールができなくなりました。そのため、今回はWindows環境へのRedmineインストール手順をなるべく簡潔にまとめました。ご参考になれば幸いです。

    なお、本記事で利用した環境やインストーラーの各バージョンは以下の通りです。

    • Windows 2025 Server
    • Redmine 6.1.1
    • Ruby 3.3.10-1
    • MySQL 8.4.8

    必要なモジュールのインストール

    Rubyのインストール

    まず以下のURLを参照の上、インストールしたいRedmineバージョンがサポートするRubyバージョンを選択してください。

    https://redmine.jp/tech_note/supported-rubies/

    以下のリンクから、インストーラーをダウンロードし、インストーラーに従いインストールします。

    https://rubyinstaller.org/downloads/

    例:Ruby+Devkit X.X.X-X (x64)

    インストール中に表示される以下のオプションについては双方にチェックを入れるようにしてください。

    インストール画面の最後のチェックを入れた状態で、Finishボタンを押します。

    プロンプトが起動しますので以下のように「1, 2, 3」と入力してエンターキーを押し関連するパッケージのインストールを行ってください。

    MySQLのインストール

    以下のリンクからMySQLのMSIインストーラーをダウンロードし、インストーラーに従いインストールします。

    https://dev.mysql.com/downloads/mysql/

    インストール画面の最後に「Run MySQL Configurator」のチェックボックスが表示されるのでチェックを入れ、Finishボタンを押します。

    データベースの初期設定を行う画面が起動しますので、MySQLのデータディレクトリ指定やrootユーザーのパスワード設定などを実施してください。

    Redmineの入手/展開

    以下のリンクからRedmineをダウンロードし、任意のパスに展開します。

    https://www.redmine.org/projects/redmine/wiki/Download/

    例:C:\Redmine

    以降このパスについては <Redmineインストールパス> と記載します。

    Redmineのインストールおよび設定

    1. DBとDBユーザー作成

    Windowsのアプリケーションで「MySQL 8.4 Command Line Client - Unicode」を起動します。その際、「Enter password」と聞かれるのでMySQLのインストール時に設定したパスワードを入力します。

    ログイン後は、以下のコマンドを実行します。

    CREATE DATABASE redmine CHARACTER SET utf8mb4;
    CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'password';
    GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';

    ※passwordの箇所には任意のパスワードを設定してください。

    2. Redmineの設定ファイルにデータベース情報を追記

    <Redmineインストールパス>/config/database.yml を開き、手順1で設定したパスワードに合わせて修正します。

    以下が修正例です。なお、MySQLのデフォルトポートは3306となりますが、MySQLのインストール時にポート番号を変更している場合は、portについても併せて修正ください。

    # Default setup is given for MySQL 5.7.7 or later.
    # Examples for PostgreSQL, SQLite3 and SQL Server can be found at the end.
    # Line indentation must be 2 spaces (no tabs).
    production:
      adapter: mysql2
      database: redmine
      host: localhost
      username: redmine
      password: "password"
      port: "3306"
      # Use "utf8" instead of "utfmb4" for MySQL prior to 5.7.7
      encoding: utf8mb4
    development:
      adapter: mysql2
      database: redmine_development
      host: localhost
      username: redmine
      password: "password"
      port: "3306"
      # Use "utf8" instead of "utfmb4" for MySQL prior to 5.7.7
      encoding: utf8mb4
    # Warning: The database defined as "test" will be erased and
    # re-generated from your development database when you run "rake".
    # Do not set this db to the same as development or production.
    test:
      adapter: mysql2
      database: redmine_test
      host: localhost
      username: redmine
      password: "password"
      port: "3306"
      # Use "utf8" instead of "utfmb4" for MySQL prior to 5.7.7
      encoding: utf8mb4

    3. Bundlerのインストール

    コマンドプロンプトを起動し<Redmineインストールパス>へ移動します。以下のコマンドを実行します。

    gem install bundler

    以降の手順でもコマンドプロンプトを利用しますので、コマンド実行後も起動したままにしてください。

    4. Gemfile.localの設定

    <Redmineインストールパス>に「Gemfile.local」ファイルを作成し以下を記載します。

    gem 'puma'

    5. configファイルの作成

    <Redmineインストールパス>に「.bundle」ディレクトリを作成し、その中に「config」ファイルを作成します。

    6. configファイルに設定を追加

    コマンドプロンプトから以下のコマンドを実行してconfigファイルに設定を追加します。

    bundle config set --local without 'development test'
    bundle config set --local path vendor/bundle

    7. bundle installの実行

    コマンドプロンプトから以下のコマンドを実行します。

    bundle install

    8. 秘密鍵の生成

    コマンドプロンプトから以下のコマンドを実行します。

    bundle exec rake generate_secret_token

    9. データベースのマイグレーション

    コマンドプロンプトから以下のコマンドを実行します。

    bundle exec rake db:migrate RAILS_ENV=production

    Redmineクラウドサービス

    Redmineの起動確認

    Redmineの起動

    以下のコマンドを実行し、Redmineを起動します。

    bundle exec puma -e production -p 3000

    その後、RedmineのURLにアクセスし起動していることを確認ください。

    例:http://localhost:3000

    Redmineのインストール手順_Redmineの起動

    RedmineをWindowsのサービスとして登録する

    RedmineをWindowsのサービスとして登録するには様々な方法がありますが、ここでは一例として WinSW(Windows Service Wrapper) を利用する方法ご紹介します。

    1. 管理用フォルダの作成

    <Redmineインストールパス>に「service」フォルダを作成します。

    2. WinSWの取得

    以下のURLから「WinSW-x64.exe」をダウンロードします。

    https://github.com/winsw/winsw/releases

    ダウンロードしたファイル名を「Redmine.exe」に変更し、<Redmineインストールパス>\service に保存します。

    3. 構成ファイルを作成

    <Redmineインストールパス>\serviceに「Redmine.xml」ファイルを作成します。

    以下が設定例です。RubyやRedmineのインストールパスは実際の環境に合わせて修正ください。

    <service>
      <id>Redmine</id>
      <name>Redmine</name>
      <description>Redmine as Windows Service</description>
    
      <executable>cmd</executable>
    
      <arguments>/c "C:\Ruby33-x64\bin\bundle.bat exec puma -p 3000"</arguments>
      <workingdirectory>C:\Redmine</workingdirectory>
    
      <env name="RAILS_ENV" value="production" />
      <env name="GEM_HOME" value="C:\Ruby33-x64\lib\ruby\gems\3.3.0" />
      <env name="GEM_PATH" value="C:\Ruby33-x64\lib\ruby\gems\3.3.0" />
    
      <stoptimeout>30000</stoptimeout>
      <stopparentprocessfirst>true</stopparentprocessfirst>
    
      <logmode>rotate</logmode>
      <logpath>C:\Redmine\log</logpath>
      <onfailure action="restart" delay="10 sec"/>
    </service>

    4. サービスのインストールと起動

    コマンドプロンプトを起動し<Redmineインストールパス>\serviceへ移動します。以下のコマンドを実行します。

    .\Redmine.exe install
    .\Redmine.exe start

    パフォーマンスに関する懸念

    現在のRedmineではアプリケーションサーバーとしてpumaを利用するのがデフォルトとなっております。しかしpumaはWindows環境ではマルチプロセス(workers)に対応しておりません。そのため、重い処理に対応できないことが懸念されます。こうしたパフォーマンスの懸念事項も踏まえてWindows環境へのインストールをご検討されている場合は、一度弊社までご相談ください。

    まとめ

    RedmineをWindows環境へインストールする方法についてご紹介しました。サーバーPCとしてWindows OSしか利用できないケースもあると思いますので、今回の記事が参考になれば幸いです。

    なお、テクマトリックスでは、環境構築やメンテナンスをせずにいつでも利用できるRedmineのクラウドサービスを提供しています。チケット数無制限、100ユーザーまで月額7,000円でご利用いただけます30日間の無料トライアルもありますので、ぜひご検討ください!

    また、Redmineの環境構築支援サービスも行っています。お客様の環境へのRedmineのインストール作業や、既存のRedmineのバージョンアップ作業を実施します。詳しくは、以下のボタンよりご確認ください!

    Redmineクラウドサービス
    Lychee Redmine各種サポートサービス

    Lychee Redmine体験版