Docker-composeによるnodeBBのインストール

2022年9月28日



Docker-composeを使ってnodeBBをインストールしてみた。

うまく行ったリポジトリ

オフィシャルではない、nibrev/nodebbというリポジトリがうまく動作した。

この中のdocker-compose.ymlを流用した。

version: '3.1'
services:
  nodebb:
    image: ghcr.io/rez0n/nodebb:latest
    restart: unless-stopped
    environment:
      URL: "http://localhost"
      DATABASE: "redis"
      DB_NAME: "0"
      DB_HOST: "redis"
      DB_PORT: "6379"
    volumes:
      - ./data/nodebb:/data
    networks:
      - nodebb
    ports:
      - "4567:4567"

  redis:
    image: redis
    restart: unless-stopped
    volumes:
      - ./data/redis:/data
    networks:
      - nodebb

networks:
  nodebb:
    driver: bridge

もちろん、実際には自分の環境に合わせて変更してある。特に、URLはこのnodebbの外側から見たURLなので、例えばhttps://nodebb.example.comのようにする(らしい)。

※実際には、nodebbのconfig.json内に転送されるのだが、The NodeBB Config (config.json)に説明があるものの、何のためにこの設定が必要なのか不明。

docker-compose.ymlを修正したら、docker-compose up -dで起動し、docker-compose logs -fでログを見ていると、途中で次のような行が表示されるので注意。

nodebb    | An administrative user was automatically created for you:
nodebb    |     Username: admin
nodebb    |     Password: ********

これが初期の管理者アカウントになる。

若干の設定

管理者の場合、一般のユーザには表示されないギアアイコンが表示されるので、そこから管理タスクを実行できる。

settings>Languagesでデフォルト言語を選択でき、Auto Detectをやめさせることができる。右下のセーブアイコンをクリックしないと設定がセーブされないことに注意。

日本語になった設定>Users>ユーザ登録にて登録タイプを「登録なし」にする。こうすると、管理者がユーザ名とパスワードを作って配布することになる。右下のセーブアイコンをクリックする。

新たなユーザ作成には、管理>ユーザに行き、右下の+ボタンをクリックする。メアドを入力する必要はない。

vimagick/nodebb

vimagick/nodebbは動作するにはするのだが、一つ問題がある。コンテナを再起動すると、初期化画面に戻ってしまうのである。大した入力項目ではないし、掲示板データは残っているので、めったに再起動しない実運用では問題無いのだろうが、厄介なのでやめた。

docker composeを使って「nodeBB」を構築するまでの手順も、このリポジトリを利用したものだ。

本家のもの

おそらく、https://github.com/NodeBB/NodeBB/blob/master/docker-compose.ymlが本家のものなのだろうが、これだけでは動作しない。別途Dockerfileが必要になるのだが、バージョンが全く異なるのか、さっぱり動かない。

これを動かすのは断念した。

未分類

Posted by ysugimura