WindowsでSubversionとRedmineを(3)
2024/07/21 ※サーバー移行しました: http://cf661650.cloudfree.jp/altmo_toolbox
今回は他のツールインストールからRedmine起動まで
PostgreSQLのダウンロードとインストール
  • PostgreSQLのダウンロードサイトから、Windows用64bit版インストーラ(Windows X86-64)をダウンロード後、ファイルをダブルクリックしてインストールを開始します。尚、PostgreSQLインストールはポイントのみ説明します。(*1)

  • Installation Directoryは <tool_folder>\PostgreSQL\16 とします。
    その後のコンポーネンツ選択はデフォルト(全てチェックされている)として下さい。
    Data Directoryは <tool_folder>\PostgreSQL\16\data になっていると思いますが、これもそのままとして下さい。

  • Password、データベースの superuser(postgres)パスワード設定です。大事なのでメモして下さい。後で使います。

  • Portは、デフォルトポート番号 5432 のままでOKです。
    Advanced Optionsでは、Locale ... 日本なら Japanese, Japan です。
    あとは、そのままSetupを進行して下さい。Installingからは数分待ちます。

  • 終了すると下記画面となりますが、'Stack Builder ...' は不要なので、オプションのチェックを外してから [Finish] です。
    Figure 1: 最後の画面ではオプションを外す(クリックで拡大)

ImageMagickのダウンロードとインストール
  • ImageMagickのDownloadサイトから、Windows用最新版をダウンロードします。2024/7/21現在だと ImageMagick-7.1.1-35-Q16-HDRI-x64-dll.exe です。こちらもポイントのみの説明です。

  • ダウンロードファイルをダブルクリックしてインストールを開始します。Destination Locationは <tool_folder>\ImageMagick-7.1.1-Q16-HDRI とします。Start Menu Folderはそのままで良いでしょう。

  • 次のAdditional Tasksですが、"Install development headers for C and C++" にチェックを入れて下さい。

    Figure 2: "Install development headers for C and C++"にチェックを入れる(クリックで拡大)

  • 後はインストール終了まで流せばOKです。

Ghostscriptのダウンロードとインストール
  • GhostscriptのDownloadサイトから、Windows 64bit版の "Ghostscript AGPL Release" をダウンロードします。2024/7/21現在だと gs10031w64.exe です。

  • ダウンロードファイルをダブルクリックしてインストールを開始します。Install Lacationは <tool_folder>\gs10.03.1 とします。後はFinishまで普通に流せば良いです。

Redmine設定: 空のデータベース作成
  • それではRedmineの設定に入ります。設定方法はRedmineの公式Wikiを参照しています。本レポートではPostgreSQLを使用したケースを説明しますが、MySQL/SQLiteについても公式Wikiに書かれています。

  • Windowsメニューから、PostgreSQLを選択し、サブメニューの SQL Shell (psql) を起動します。

  • Figure 3: psql起動(クリックで拡大)

  • psql起動後、コマンドを入力していきます。先ほど「大事なのでメモして下さい」と書いたPostgreSQLのパスワードをここで使用します(下記例では hogehoge とします)。青字は入力ですが、[Enter]は「Enterキーを押す」の意味です。
    Server [localhost]: [Enter]
    Database [postgres]: [Enter]
    Port [5432]: [Enter]
    Username [postgres]: [Enter]
    Client Encoding [SJIS]: [Enter]
    ユーザー postgres のパスワード: hogehoge
    psql (16.3)
    "help"でヘルプを表示します。
    
    postgres=# CREATE ROLE redmine LOGIN ENCRYPTED PASSWORD 'hogehoge' NOINHERIT VALID UNTIL 'infinity';
    CREATE ROLE
    postgres=# CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;
    CREATE DATABASE
    postgres=# exit
    続行するには何かキーを押してください . . .
    

Redmine設定: データベース接続設定
  • Redmineインストールフォルダのconfigフォルダ (<tool_folder>\redmine-5.1.3\config) に移動後、database.yml.example をコピーして database.yml を作成します。

  • database.yml をテキストエディタで開き、下記内容とします(例ではPostgreSQLのパスワードが hogehoge です)。
  • production:
      adapter: postgresql
      database: redmine
      host: localhost
      username: redmine
      password: "hogehoge" 
      encoding: utf8
      schema_search_path: public
    

Redmine設定: 依存関係を持つGemのインストール(*2)
  • コマンドプロンプトを起動し、Redmineインストールフォルダ (<tool_folder>\redmine-5.1.3) に移動します。

  • カレントフォルダ移動後、下記コマンドを実行します。
    >bundle config set --local without 'development test'
    >bundle install
    Fetching gem metadata from https://rubygems.org/.........
    Resolving dependencies...
    ...(中略)...
    >
    
  • 一度コマンドプロンプトを閉じます。そして再度コマンドプロンプトを起動し、Redmineインストールフォルダ (<tool_folder>\redmine-5.1.3) へ移動します。移動後下記コマンドを実行します(数分かかります)。
  • >gem install rmagick
    Fetching rmagick-6.0.1.gem
    ...(中略)...
    >bundle config set --local without 'development test'
    >bundle add rmagick
    ...(中略)...
    >
    
  • 先と同様にコマンドプロンプトを閉じ、Redmineインストールフォルダへを移動後 Gemfile を編集します。途中の gem 'puma' をコメントアウトし、最終行に gem 'puma' を追加します。
  • ...(中略)...
    group :test do
      gem "rails-dom-testing"
    ...(中略)...
      # For running system tests
      #gem 'puma'
    ...(中略)...
    gem "rmagick", "~> 6.0"
    gem 'puma'
    
  • Gemfile編集後、再度コマンドプロンプトを起動、Redmineインストールフォルダへ移動し、下記コマンドを実行します(*3)
  • >gem install puma
    Fetching puma-6.4.2.gem
    ...(中略)...
    >bundle config set --local without 'development test'
    >bundle install
    ...(中略)...
    >
    
  • 終了後コマンドプロンプトを閉じます。

Redmine設定: セッションの秘密鍵生成とデータベース設定
  • コマンドプロンプトを起動、Redmineインストールフォルダへ移動します。移動後下記コマンドを実行します。
  • >bundle exec rake generate_secret_token
    
  • 同じコマンドプロンプトで環境変数 RUBY_DLL_PATH を設定します(永続設定ではありません)。設定先は、PostgreSQLのbinフォルダ (<tool_folder>\PostgreSQL\16\bin) です。
    >set RUBY_DLL_PATH=F:\TaskManage\tools\PostgreSQL\16\bin
    
  • 同じコマンドプロンプトで下記を実行します。
  • >set RAILS_ENV=production
    >bundle exec rake db:migrate
    ...(中略)...
    >
    
  • 同じコマンドプロンプトで引き続き下記を実行します。
  • >set REDMINE_LANG=ja
    >bundle exec rake redmine:load_default_data
    Default configuration data loaded.
    
    >
  • これでインストールは終了です。

Redmine起動
  • それではRedmineを起動してみましょう。コマンドプロンプトを立ち上げて、Redmineインストールフォルダ(<tool_folder>\redmine-5.1.3)へ移動後、下記コマンドを実行して下さい。
  • >bundle exec rails s -e production
    => Booting Puma
    ...(中略)...
    * Listening on http://0.0.0.0:3000
    Use Ctrl-C to stop
  • 初回起動時、下記のような画面が出たらアクセスを許可してあげて下さい。

    Figure 4: Redmine初回起動時アクセス許可(クリックで拡大)

  • 起動後 http://localhost:3000 にアクセスし、下記のような画面が出ればOKです。

    Figure 5: Redmine起動(クリックで拡大)

  • あとはログインしていろいろ設定してみましょう。アドミニストレータの初期アカウントとパスワードは下記です。
    • login: admin
    • password: admin

  • 自動起動については、先の起動コマンド...カレントディレクトリを移動後、bundle exec rails ...を実行...ですが、バッチファイル等にして、タスクスケジューラでPC ON時に遅延実行する等いくつか手はあると思いますので、適宜選択下さい。

Appendix: Rubyの移動 (追記:2024-07-27)
  • この作業は特に必要ありませんが、今回のインストールではRedmineに関連するSoftwareを <tool_folder> に集めるとしているので、現在Cドライブ直下の C:\Ruby32-x64 に置かれているRubyを <tool_folder> に移動します。

  • 実際の操作ですが、まず一度Redmineを停止します。その後、エクスプローラで C:\ の下にある Ruby32-x64 フォルダを、<tool_folder> にコピーします。

  • コピー後 C:\ の下にある Ruby32-x64 フォルダを削除します。

  • そして管理者権限でコマンドプロンプトを起動し、C:\ の下で、Ruby32-x64シンボリックリンクを作成します。
  • >C:
    >cd C:\
    >mklink /d Ruby32-x64 <tool_folder>\Ruby32-x64
    (例)mklink /d Ruby32-x64 F:\TaskManage\tools\Ruby32-x64
    
  • これでOKです。

Appendix: Redmineの自動起動 (追記:2024-07-27)
  • Redmineを自動起動させる方法ですが正直バッチファイルで良いかと思います。"sc.exe create" までは特に必要無いかと。

  • スタートアップ登録でも良いですが、ログインに関係なく起動したい場合タスクスケジューラを使うことになります。その際はRuby実行パスがユーザ側のPath環境変数に登録されていると思うので、システム側Path環境変数へ移動して下さい。(*4)

  • ちなみにバッチファイルのショートカットを作成後、ショートカット起動を"最小化"に設定し、ショートカット(ショートカット名.lnk)自身をスタートアップ又はタスクスケジューラに登録すれば最小化起動できます。

Appendix: Pluginのインストール (追記:2024-11-17)
  • 現在Redmine 5.1.3 にて下記のpluginをインストールしています。GitHubに書かれているinstallプロシージャは忖度しつつ読む必要があります。とにかくcloneをredmineのpluginsディレクトリに置くことが暗黙の了解です。

  • PluginRevコメント
    clipboard_image_paste 1.13 redmineディレクトリでgit clone実行
    redmine_absolute_dates 0.0.4 git clone指定先はgit://ではなくhttps://
    redmine_issue_templates 1.2.1 特に無し
    redmine_latex_mathjax 0.3.0 bundle install --without development testが必要
    redmine_wiki_unc 0.0.4 init.rbの編集が必要
    view_customize 3.5.2 特に無し

  • 特にredmine_wiki_uncは、Redmine 5.*に対応させるため、ソース編集の必要がありました。
    • 変更前(ライン2): require_dependency 'redmine_wiki_unc_hooks'
    • 変更後(ライン2): require_dependency File.expand_path('../lib/redmine_wiki_unc_hooks', __FILE__)

  • 尚上記対応については、RedmineプラグインのRedmine5(Rails6)向け対応 を参照しました。情報に感謝です。

最後に
  • 今回はWindowsでのRedmineインストールをレポートしました。どうやらWindows版RedmineのInstallプロシージャは揺れ動いているようで、書いてある通りに進めてもあちこちでうまくいかないところが出てきます。

  • Rubyの扱いに慣れていることが暗黙の前提となっている雰囲気もあり、確かに初見では難しいところがありました。

  • 今回のレポートが助けになれば幸いですが、しばらくすると変わっているかもと考えています。確認しながら利用下さい。
Notes
  • <tool_folder>前回レポートで例として決めたフォルダーです。F:\TaskManage\tools としていました。
  • sidekiqの適用は別途とします。
  • gem install puma は不要かもしれません。つい実行してしまいました。
  • 永続環境変数の設定はシステムのプロパティから行います。
2024-11-17: Appendix(plugin)追加
2024-07-27: Appendix追加
2024-07-21: 初版
Copyright(C) 2024 Altmo
本HPについて