Wiki.jsをセットアップして数分で独自のWikiを作成する方法

DockerでWiki Jsをセットアップ

Wiki.jsはNode.js上に構築された強力なオープンソースのWikiプラットフォームです。MarkdownおよびWYSIWYG編集、リアルタイムコラボレーション、バージョン管理、そしてGoogleやLDAPを含む柔軟な認証オプションをサポートしています。このガイドでは、Dockerを使用してWiki.jsをセットアップし、数分でWikiを稼働させる方法をお教えします。

Docker Composeを使用してWiki.jsをインストールする

DockerとDocker Composeを使用すると、wiki.jsのセットアップは非常に簡単です。まず、「wikijs-docker」という名前のディレクトリを作成し、cdコマンドでアクセスします:

mkdir wikijs-docker && cd wikijs-docker

次に、お好きなテキストエディタで「docker-compose.yml」ファイルを作成します:

nano docker-compose.yml

そして、このファイルに以下の内容を貼り付けます:

services:  
  
  db:  
    image: postgres:16  
    environment:  
      POSTGRES_DB: wiki  
      POSTGRES_PASSWORD: wikijsrocks  
      POSTGRES_USER: wikijs  
    restart: unless-stopped  
    volumes:  
      - db-data:/var/lib/postgresql/data  
  
  wiki:  
    image: ghcr.io/requarks/wiki:2  
    depends_on:  
      - db  
    environment:  
      DB_TYPE: postgres  
      DB_HOST: db  
      DB_PORT: 5432  
      DB_USER: wikijs  
      DB_PASS: wikijsrocks  
      DB_NAME: wiki  
    restart: unless-stopped  
    ports:  
      - "80:3000"  
  
volumes:  
  db-data:

ファイルを保存して閉じたら、以下のコマンドを使用してコンテナを起動します:

docker compose up -d

Dockerコンテナを実行

セットアップが完了したら、ブラウザでhttp://localhostでwiki.jsを開き、管理者アカウントの詳細を指定して「インストール」ボタンをクリックしてインストールを開始します:

Wiki Jsのインストールを開始

インストール後、資格情報を入力してログインします。

Wiki.jsでのページの作成と管理

これでコンテンツを追加するためのホームページを作成したり、設定、ユーザー、機能を管理するための管理パネルにアクセスできます:

ウェルカムページWiki Js

ホームページを作成ボタンをクリックすると、ページのエディターを選択するよう求められます。ニーズや好みに基づいて選択してください:

エディターを選択

ページのプロパティを指定して、OKボタンをクリックして新しいページを作成します:

ページプロパティを設定

好きな内容を書き、作成ボタンをクリックしてページを作成します:

ページを作成Wikijs

コンテンツの管理と整理

ダッシュボードでは、既存のページを表示および編集したり、お気に入りのエディターを使って新しいページを作成したり、ページを移動、名前変更、削除することでコンテンツを整理できます。また、タグを追加してコンテンツを効果的に分類できます。さらに、サイドバーと検索バーを使って、Wiki内の特定のページに迅速にナビゲートすることができます:

Wiki Jsダッシュボード

Wiki.jsサイト設定

Wiki.jsの管理パネルでは、ロケール、ナビゲーション、テーマ、タグなどのサイト設定を構成できます。これらのオプションは、Wiki.jsインスタンスのグローバル構成を定義するのに役立ちます。

一般タブでは、サイトのタイトル、説明、デフォルトのホームページ、サイトの可視性(公開または非公開)などの基本的なサイト全体の設定を構成できます:

一般設定

ロケールタブに移動して、サイト全体で使用されるデフォルトの言語、タイムゾーン、日付/時刻形式を設定します:

ロケールを設定

ユーザーがコンテンツを閲覧する方法を管理するために、ナビゲーションバーに移動します。

サイトナビゲーションを管理

ページタブでは、すべてのWikiページを表示、管理、整理できます。新しいページを作成したり、既存のページを編集したり、ページ階層を管理したりできます。

ページを管理

また、タグタブでコンテンツタグを作成および管理し、ページを分類して検索しやすくすることができます。同様に、テーマタブからWikiの外観と感じを変更できます。たとえば、サイトのロゴ、色、フォント、レイアウトテーマを変更できます。

テーマを管理

Wikiのグループを管理する

グループセクションでは、ユーザーグループを作成し、メンバーを割り当て、グループレベルの権限を設定してアクセスをコントロールできます。グループを使用してユーザーを役割で整理し、Wiki全体で一貫してアクセスを管理します。

グループ

特定のグループをクリックして、その設定や権限、ページルールを更新し、そのグループ内のユーザーを管理できます。設定タブでは、ログイン時のリダイレクトURLなどのオプションを構成できます。

グループ設定を編集

さらに、権限ページルールユーザータブをナビゲートして、グループがアクセス可能なものや、どのユーザーが割り当てられているかを制御します。

Wiki.jsでのユーザー管理

新しいユーザーを作成するには、ユーザーセクションに移動し、新しいユーザーボタンをクリックして、必要な詳細を指定します。

その後、作成または作成して閉じるボタンをクリックして新しいユーザーを作成します:

ユーザー作成

特定のユーザーをクリックして、そのプロフィールを表示および編集し、ユーザーグループに割り当て、パスワードや二要素認証などの認証方法を設定し、無効化確認、または削除などのアクションを使用してそのステータスを管理できます:

ユーザー作成済み

基本情報、拡張メタデータ(場所や職種など)、およびアクティビティ履歴を監視することもできます:

ユーザーを編集

Wikiモジュールの管理

モジュールは、Wiki.jsの機能を拡張するオプションの機能です。たとえば、アナリティクスモジュールを使用すると、ユーザーの行動やWiki上のトラフィックを追跡するためにGoogleアナリティクスなどの統合を有効にして設定できます。

アナリティクスを追加

認証タブを使用して、認証プロバイダー(ローカルログイン、LDAP、OAuthなど)を設定および管理し、ログインオプションを構成します。

認証設定を構成

コメントシステムを有効または無効にし、ユーザーがページのディスカッションにどのように関与するかを選択できます。

Wikiにディスカッションを追加

システム構成

コンテンツがどのようにレンダリングされ、検索され、ストレージされるかを管理するために、レンダリングエンジン、検索インデックス、ストレージオプションを設定できます。たとえば、レンダリングタブに移動して、Markdownエンジンの設定や図、数式などのサポートをカスタマイズできます。

ページレンダリングを構成

検索エンジンセクションでは、内部検索インデックスのオプションや検索エンジンとの統合を設定できます:

検索エンジンを構成

ストレージセクションに移動して、コンテンツのバックアップおよび同期対象を設定します。ここでは、メディアやページの添付ファイルがどこに、どのように保存されるか(ローカルファイルシステム、AWS S3など)を管理できます:

ストレージ設定を構成

セキュリティと接続の管理

APIアクセス、通知用のメール設定、セキュリティポリシーの調整、Wiki.jsサイトのSSL有効化などを構成することで、セキュリティと接続を管理できます。たとえば、外部システムやカスタムアプリケーションとWiki.jsを統合するためにAPIトークンを管理できます:

APIキーを管理

Wiki.jsでの通知、招待、パスワード回復を処理するための送信メール設定を行うことができます。

メール設定を構成

セッションのタイムアウト、パスワードポリシー、アクセス制限などのセキュリティ設定を構成できます。

セキュリティ設定を構成

そのほか、Wiki.jsサイトをHTTPSで保護するためのSSL/TLS証明書を設定できます。

SSL/TLS証明書を管理

また、システム情報セクションからシステム診断の表示、サーバーの詳細、実行環境の統計など、Wikiの情報を確認できます。

システム情報を確認

ユーティリティタブからは、検索の再インデックス、キャッシュのクリア、設定のリセットなどのメンテナンスアクションを実行できます。

ユーティリティを管理

最後に、開発者ツールを使用すると、GraphQLプレイグラウンド、デバッグログ、カスタムスクリプトなどの高度なツールにアクセスできます:

開発者ツールを管理

これで、Dockerを使用してWiki.jsのセットアップ方法を学んだので、内部文書、チームWiki、または公開のナレッジベースを簡単に構築できるようになります。まだ選択を考えている場合は、DokuWikiとWiki.jsの比較をご覧いただき、どのプラットフォームがプロジェクトに最適かを確認してください。