Redmine を載せてみる / Wiki だけでよかったんだが

ブログに起こす気力がなくてもメモ程度を置ける場所を作りたくて、 Wiki かなって探してたんだけども、

となった次第。以下を参照しつつ、やってみた。

注意

これを記載している時点において、Conoha の DBサービスで utf8mb4 な Redmine を立ち上げるすべがなさげ。つまりは、絵文字は死を意味する(言い過ぎ)。

DB

DBは Conoha の DBサーバサービスを使用することにした。ここら辺を参照して、有効化し、接続、疎通確認。

ルーティングに関する情報、一か所にまとまってたらいいのに、って思いつつ。

docker-compose.yaml

まずは、公式イメージをそのまま使う。*1

version: '2'

services:
    redmine:
         image: redmine:4
         ports:
             - 8081:3000
         environment:
             REDMINE_DB_MYSQL: private.***.conoha.io
             REDMINE_DB_PORT: 3306
             REDMINE_DB_USERNAME: username
             REDMINE_DB_PASSWORD: password
             REDMINE_DB_DATABASE: dbname
             REDMINE_DB_ENCODING: utf8
             REDMINE_PLUGINS_MIGRATE: "true"
         restart: always

ポートは空いてるところにマッピングするよろし。 とりあえず、起動して、使えることを確認。

ここで、admin のパスワード変更と、デフォルトデータのロードを済ませておく。

Dockerfile 作成と docker-compose の修正

再構築にかかる手作業を減らしたい。 テーマとかプラグインとかいれた記録とか。 ついでに、これらのファイルを公開しても大丈夫なように調整。

GitHub - mitaroThanken/Redmine_docker at 20200104_01

この時点で、DB接続用のパスワードとかをリポジトリ管理外に切り出している。

メール送信のための設定

以下のことをした。(GitHub - mitaroThanken/Redmine_docker at 20200104_02)

  1. コンテナ内にある configuration.yml.example をコンテナの外に出す
  2. configuration.yml.example の最後にある productiondevelopment の順番を入れ替えたものをconfiguration.ymlにする

    将来、秘密にする必要のない設定は、このファイルで行う想定。

  3. .secrets ディレクトリにメール送信に関する設定だけを書いたファイルを用意(以降、configuration_email_delivery.ymlとする)

    Conoha のメールサーバサービスを使ってみたので、設定はこんな感じに。

  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: "SMTPサーバ"
      port: ポート
      authentication: :login
      domain: ドメイン
      user_name: 'メールアドレス'
      password: パスワード
      openssl_verify_mode: 'none'

Dockerfileconfiguration.ymlconfiguration_email_delivery.yml を連結して、おしまい。

設定のメール通知から、テストメールを送信し、動作を確認した。

その他設定

ひとまず以下を変更した。

  • 全般
  • 表示
    • 「デフォルトの言語」を日本語に
    • 「時間の形式」を 0:45 h に
    • 「Gravatarのアイコンを使用する」にチェックを入れる
  • ユーザ
    • 「新しいユーザのデフォルト設定」の「タイムゾーン」を Tokyo に
  • メール通知

新しいユーザを追加し、admin をロック

って、「アカウント情報をユーザーに送信」にチェック付けて送信すると、生パスワードも通知するのか……

おわり

といっても、まだプロジェクト作ってないので、Wiki 使えない。 なので、続く。

*1:パスワード直書きしてる時点でダメなやつ。