【2019年版】QNAP に Bitnami 版 TestLink をインストールする方法


TL;DR

最新のContainerStationは、

  • docker-compose コマンドが使えるようになった
  • あわせてdockerコマンドのlinkオプション廃止、docker network の利用を推奨

以下、2019年11月現在の事情に合わせて記述する

環境

  • NASマシン:QNAP TS-451+
  • NASアプリ:ContainerStation Version 2.0.356(2019/05/28)
  • NASアプリ:FileStation Version 5.1.0(20190531)
  • NASアプリ:Hybrid Backup Sync Version 3.0.191016
  • ローカルPC: macOS Mojave 10.14.6

1. 共有フォルダーを作成

Dockerコンテナの永続化用のBackupディレクトリを作成

  1. QNAP TS-451+ にログイン
  2. バックアップ同期ソフトの HybridBackupSync を起動
  3. /Container/dataフォルダを定期バックアップ(毎日)する
  4. FileStation を起動
  5. バックアップの指定フォルダに新規フォルダを作成
    1. /Container/data/testlink/mariadb
    2. /Container/data/testlink/testlink

2. ContainerStation の docker-compose でインストール

bitnami/testlink から docker-compose.yml をダウンロードして編集する

参考URL:bitnami/testlink

ローカルPC
$ mkdir -p ~/temp/testlink
$ cd ~/temp/testlink
$ curl -sSL https://raw.githubusercontent.com/bitnami/bitnami-docker-testlink/master/docker-compose.yml > docker-compose.yml

参考:docker-compose.yml を任意のエディタで開く

ローカルPC
$ cd ~/temp/testlink
$ vim docker-compose.yml

参考:オリジナルのdocker-compose.yml

docker-compose.yml
version: '2'

services:
  mariadb:
    image: 'bitnami/mariadb:10.3'
    environment:
      - MARIADB_USER=bn_testlink
      - MARIADB_DATABASE=bitnami_testlink
      - ALLOW_EMPTY_PASSWORD=yes
    volumes:
      - 'mariadb_data:/bitnami'
  testlink:
    image: 'bitnami/testlink:1'
    environment:
      - MARIADB_HOST=mariadb
      - MARIADB_PORT_NUMBER=3306
      - TESTLINK_DATABASE_USER=bn_testlink
      - TESTLINK_DATABASE_NAME=bitnami_testlink
      - ALLOW_EMPTY_PASSWORD=yes
    ports:
      - '80:80'
      - '443:443'
    volumes:
      - 'testlink_data:/bitnami'
    depends_on:
      - mariadb

volumes:
  mariadb_data:
    driver: local
  testlink_data:
    driver: local

編集後の docker-compose.yml

編集ポイント
- image: を bitnami/mariadb:10.3 に指定する
- image: を bitnami/testlink:1.9.19 に指定する
- ALLOW_EMPTY_PASSWORD=yes で DB パスワード無しにする
 ※簡易だが公開サーバには不向き、DBパスワードありは後述する
- QNAP の各バックアップディレクトリを Volumes: で指定する
- ポート番号を任意のポートに指定する
- メール設定をする(本設定は Gmail のもの)
- TestLink の管理者アカウントとパスワードを指定する
- TestLink の言語を日本語対応させる

docker-compose.yml
version: '3'

services:
  mariadb:
    image: 'bitnami/mariadb:10.3'
    environment:
      - ALLOW_EMPTY_PASSWORD=yes
      - MARIADB_USER=bn_testlink
      - MARIADB_DATABASE=bitnami_testlink
    volumes:
      - '/share/Container/data/testlink/mariadb:/bitnami'
  testlink:
    image: 'bitnami/testlink:1.9.19'
    environment:
      - ALLOW_EMPTY_PASSWORD=yes
      - MARIADB_HOST=mariadb
      - MARIADB_PORT_NUMBER=3306
      - TESTLINK_DATABASE_USER=bn_testlink
      - TESTLINK_DATABASE_NAME=bitnami_testlink
      - TESTLINK_EMAIL=[email protected]
      - TESTLINK_LANGUAGE=ja_JP
      - SMTP_ENABLE=true
      - SMTP_HOST=smtp.gmail.com
      - SMTP_PORT=587
      - SMTP_USER=[email protected]
      - SMTP_PASSWORD=mymailpassword12345678
      - SMTP_CONNECTION_MODE=tls
      - TESTLINK_USERNAME=admin
      - TESTLINK_PASSWORD=pass1234
    ports:
      - '0.0.0.0:33080:80'
      - '0.0.0.0:33443:443'
    volumes:
      - '/share/Container/data/testlink/testlink:/bitnami'
    depends_on:
      - mariadb

DBパスワードありの docker-compose.yml

編集ポイント
- 上記の設定に DB パスワードを設定する

docker-compose.yml
version: '3'

services:
  mariadb:
    image: 'bitnami/mariadb:10.3'
    environment:
      - MARIADB_ROOT_PASSWORD=master_root_password
      - MARIADB_PASSWORD=my_password
      - MARIADB_USER=bn_testlink
      - MARIADB_DATABASE=bitnami_testlink
    volumes:
      - '/share/Container/data/testlink3/mariadb:/bitnami'
  testlink:
    image: 'bitnami/testlink:1.9.19'
    environment:
      - TESTLINK_DATABASE_PASSWORD=my_password
      - MARIADB_HOST=mariadb
      - MARIADB_PORT_NUMBER=3306
      - TESTLINK_DATABASE_USER=bn_testlink
      - TESTLINK_DATABASE_NAME=bitnami_testlink
      - TESTLINK_EMAIL=[email protected]
      - TESTLINK_LANGUAGE=ja_JP
      - SMTP_ENABLE=true
      - SMTP_HOST=smtp.gmail.com
      - SMTP_PORT=587
      - SMTP_USER=[email protected]
      - SMTP_PASSWORD=mymailpassword12345678
      - SMTP_CONNECTION_MODE=tls
      - TESTLINK_USERNAME=admin
      - TESTLINK_PASSWORD=pass1234
    ports:
      - '0.0.0.0:33080:80'
      - '0.0.0.0:33443:443'
    volumes:
      - '/share/Container/data/testlink/testlink:/bitnami'
    depends_on:
      - mariadb

ContainerStation で TestLink を起動する

  1. QNAP TS-451+ にログイン
  2. ContainerStation を起動
  3. 左カラムの「作成」を選び、画面右上にある「+アプリケーションの作成」ボタンを押す
  4. 「アプリケーションの作成」画面が起動するので、
  5. 「アプリケーション名:」に任意の名前(ハイフン不可)を入力する
  6. 「YAML:」に、ローカルPC上で編集した docker-compose.yml をコピペする
  7. 「YAMLを検証」ボタンを押して、コピペの内容を検証する
  8. 「作成」ボタンを押す

数分ほど待機すると、ログイン画面にアクセスできるようになる

指定したアカウントとパスワードでログインできるかを確認する

  • アカウント:admin (パスワード無指定のデフォルト値は: user )
  • パスワード:pass1234 (パスワード無指定のデフォルト値は: bitnami )

http://QNAPのIPアドレス:33080/
https://QNAPのIPアドレス:33443/


4. TestLink を設定する

【2019年版】Docker Bitnami/TestLink を設定する

以上