10
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

脱BackLogsスクラム開発(Ubuntu18.04 + sameersbn/Redmine3.4.6 + Scrum)

Last updated at Posted at 2018-09-30

背景・目的

Redmineでスクラム開発というとBackLogsプラグインが定番だが、Redmine3に正式には対応しておらず、何かと問題が発生する。
また、RedmineUPのAgileプラグインはLite版だと最低限のことしかできない。
Redmine公式のPluginsを探すとScrumというプラグインが3.4.xに対応しており評価も高いが、日本語の情報が少ないため設定のメモを残す。

Ubuntu

Docker

Dockerのインストール1

Ubuntu18.04のaptでインストール可能なDockerはver.1.5と古いため、以下の手順でdocker-ceをインストールする。

$ sudo apt-get update
$ sudo apt-get install -y \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"
$ sudo apt-get update
$ sudo apt-get install -y docker-ce

sudoなしでdockerの実行2

$ sudo usermod -aG docker $USER

Redmine

sameersbn/redmine

docker-compose.yml

公式のdocker-compose-mysql.ymlvolumes周りを多少変更。
プラグインとテーマは個別に入れ替えることが多いので別ボリューム。

docker-compose.yml
version: '2'

services:
  mysql:
    image: sameersbn/mysql:5.7.22-1
    environment:
      - DB_USER=redmine
      - DB_PASS=password
      - DB_NAME=redmine_production
    volumes:
      - ./mysql:/var/lib/mysql

  redmine:
    image: sameersbn/redmine:3.4.6
    depends_on:
      - mysql
    environment:
      - TZ=Asia/Tokyo

      - DB_ADAPTER=mysql2
      - DB_HOST=mysql
      - DB_PORT=3306
      - DB_USER=redmine
      - DB_PASS=password
      - DB_NAME=redmine_production

      - REDMINE_PORT=10083
      - REDMINE_HTTPS=false
      - REDMINE_RELATIVE_URL_ROOT=
      - REDMINE_SECRET_TOKEN=

      - REDMINE_SUDO_MODE_ENABLED=false
      - REDMINE_SUDO_MODE_TIMEOUT=15

      - REDMINE_CONCURRENT_UPLOADS=2

      - REDMINE_BACKUP_SCHEDULE=
      - REDMINE_BACKUP_EXPIRY=
      - REDMINE_BACKUP_TIME=

      - SMTP_ENABLED=false
      - SMTP_METHOD=smtp
      - SMTP_DOMAIN=www.example.com
      - SMTP_HOST=smtp.gmail.com
      - SMTP_PORT=587
      - SMTP_USER=mailer@example.com
      - SMTP_PASS=password
      - SMTP_STARTTLS=true
      - SMTP_AUTHENTICATION=:login

      - IMAP_ENABLED=false
      - IMAP_HOST=imap.gmail.com
      - IMAP_PORT=993
      - IMAP_USER=mailer@example.com
      - IMAP_PASS=password
      - IMAP_SSL=true
      - IMAP_INTERVAL=30

    ports:
      - "10083:80"
    volumes:
      - ./redmine:/home/redmine/data
      - ./redmine/plugins:/home/redmine/redmine/plugins
      - ./redmine/public/themes:/home/redmine/redmine/public/themes

Proxy環境下の時はredmineenvironmentに以下を追記する。

      - HTTP_PROXY=http://proxy.example.com
      - HTTPS_PROXY=http://proxy.example.com
      - NO_PROXY=localhost,127.0.0.1
      # ホストに環境変数が設定してある場合以下でもよい
      #- HTTP_PROXY=${HTTP_PROXY}
      #- HTTPS_PROXY=${HTTPS_PROXY}
      #- NO_PROXY=${NO_PROXY}

コンテナ作成・起動

適当な場所にインストールディレクトリを作成。
今回は/srv/docker/redmine/とする。
上記のdocker-compose.yml/srv/docker/redmine/に置く。

$ cd /srv/docker/redmine
$ docker-compose up -d

Redmine初期設定

  1. http://[DockerホストのIP]:10083でRedmineに接続
  2. ログインID:admin、パスワード:adminでログイン
  3. 適当に初期設定

Scrumプラグイン

インストール

sameersbn/redmineなら展開したディレクトリをpluginsディレクトリに置いてDockerを再起動するだけでいいはず。

上記のdocker-compose.yml通りにホストのディレクトリをマウントしているならば以下。

$ mv /path/to/Scrum /srv/docker/redmine/redmine/plugins/

直接転送するなら以下でもよい。

$ docker cp -r /path/to/Scrum redmine_redmine_1:/home/redmine/redmine/plugins/

pluginsディレクトリに置いたらDockerを再起動。

$ docker-compose restart

Redmine設定

必要となる権限、ステータス、カスタムフィールド、トラッカー等を設定する。

管理者権限ユーザーでログインし、管理画面から以下を設定する。

  1. ロールと権限

    権限レポートからScrumの項目を設定する。
    2018-09-30_220817.jpg

  2. チケットのステータス

    バックログ用のステータスを作成する。
    ※不要なステータスも削除しているが、Scrum側の設定で表示しないことも可能
    2018-09-30_221129.jpg

  3. カスタムフィールド

    ・Blocked: かんばんの付箋の移動を制御する真偽値

    2018-09-30_221338.jpg

    ・StoryPoints: ストーリーポイントのリスト
          ※慣例に倣ってフィボナッチ数列
    2018-09-30_221538.jpg

  4. トラッカー

    BackLogsでよく設定されているストーリートラッカーと同じもの。
    2018-09-30_222157.jpg
    タスクに関しては、BackLogsと同じくタスクトラッカーを別途作成しても、デフォルトのバグ機能を使用してもよい。

Scrum設定

Scrumプラグインの設定を行う。
管理画面 → プラグイン → Scrum Redmine plugin

設定例
2018-09-30_222450.jpg
2018-09-30_222542.jpg

プロジェクト設定

プロジェクトの設定からScrumモジュールをONにして、Product backlogsSprintsを作成する。

・Product backlogs
2018-09-30_231157.jpg

・Sprints
2018-09-30_231403.jpg

これで正常に動くはず。

後は、プロジェクトのSprintBacklogでストーリーやタスクを追加する。
タスクはストーリーの子チケットとして作成される。

  1. Ubuntuにdockerをインストールする

  2. Dockerでユーザーをdockerグループに追加することの危険性を理解しよう

10
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?