Redmine に EasyGantt のプラグインを入れようとしたらハマったので備忘録

首題の件ですが、 Redmine に EasyGantt というプラグインを入れることにしました。
目的としては、このプラグインを入れることで、ドラッグアンドドロップでガントチャートが引けるようになるからです。

ガントチャートの運用で一番の問題点は、メンテナンスだと思っています。例えば予定を変更する際に、わざわざ日付を手入力するのはかなりのストレスです。それによって、結果的にメンテナンスが置き去りにされて、最終的にガントチャート使わなくなるという流れを今まで何回も経験してきたので、それに終止符を打つべく、 EasyGantt の導入を試みました。

しかし、このプラグイン導入がなかなかてこずりました。
その備忘録を残しておきます。

前提

環境

  • Redmine は Docker で運用している
  • Redmine のバージョン: 3.4.5 1
  • 使用しているDB: mysql
    • mysql のバージョン: 5.7.21 2
  • Docker が動作しているOS: Windows 10 Pro (Docker For Windows で運用)
  • docker-compose を使用している

概要

先にハマったポイントを列挙しておきます。

  • volume のマウントがうまくいかない
  • プラグインの導入方法が、 docker-redmine の公式 に書いてある方法ではうまくいかなかった

手順

結果的に、成功した手順を載せます。

EasyGantt のプラグインを公式からダウンロードする

以下から無料版をダウンロードしました。

www.easyredmine.jp

ダウンロードしたら EasyGanttFree-3.x.zip を解凍して、docker-compose.yml の存在するディレクトリに置きます。

docker-compose ファイルを修正する

version: '3.1'
services:
  redmine:
    image: redmine:3.4.5
    container_name: redmine
    restart: always
    ports:
      - 3000:3000
    environment:
      REDMINE_DB_MYSQL: mysql
      REDMINE_DB_PASSWORD: example
      http_proxy: XXXXXXXXXXX
      https_proxy: XXXXXXXXXXXX
    volumes:
      - files:/usr/src/redmine/files
      # ↓これを追加
      - easy_gantt:/usr/src/redmine/plugins/easy_gantt
    networks:
      - common
  mysql:
    image: mysql:5.7
    container_name: redmine-mysql
    command: mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: example
      MYSQL_DATABASE: redmine
      http_proxy: XXXXXXXXXXXX
      https_proxy: XXXXXXXXXXXX
    volumes:
      - mysql:/var/lib/mysql
    networks:
      - common
networks:
  common:
    external: true
volumes:
  files:
  mysql:
  # ↓これを追加
  easy_gantt:

Docker で普通に Redmine を起動する

PowerShell を起動して、以下コマンドで Redmine を起動します。

$ docker-compose up --build

以上で完了のはずです。

追記

これだけだと、コンテナ内にプラグインが展開されていないことがあったので、その場合は以下を実行しました。(コンテナの外側から)

$ docker cp .\easy_gantt\ redmine:/usr/src/redmine/plugins

これで、コンテナの外側からプラグインをコンテナ内に配置できます。

Redmine で確認

f:id:tassi-yuzukko:20190610142252p:plain

上記のように 「Easy Gantt」と表示されていれば、とりあえずプラグインのインストール自体は成功みたいです。


  1. Redmine Ver4.x 以上の場合、 EasyGantt は非対応かもしれないという情報がありました。
  2. mysql v8 以上は認証方式が変更になっているらしく、最初 mysql をバージョンアップしようとしてハマりました。

コメント

タイトルとURLをコピーしました