情報共有ツール knowledge

情報共有ってどのように行われているのでしょうか?

情報もいろいろあるのですが、文書管理のシステムがあったりファイルサーバがあったり、 いろいろなところに情報があります。しかし、なかなか体系立てて運用するのは難しいようです。

そこで、esa.ioやQiitaなどを検討してみましたが、事情があり外に置けないという事でknowledgeに たどり着きました。

まだ試験的な運用ですので、定着するのかわかりませんが記録として残していきます。

knowledgeのインストール

knowledgeは、GitHubに公開されておりJava製、Apache License 2.0のオープンソースだそうです。

knowledgeの実行には、Java version 8 以降とTomcat 8.0以降が必要となります。また、長期間、安定した運用を行いたい場合、 はPostgreSQLが推奨されていますので、必要な場合はPostgreSQLも用意します。

ここでは、PostgreSQLを使用したインストールとなります。(インストールというほどでもないです。)

まず、knowledge(GitHub)からknowledge.warファイルをダウンロードします。

ダウンロードしたknowledge.warファイルをTomcatのwebappsディレクトリに配備します。

以上でインストールは完了です。

knowledgeの設定

インストールが完了したらknowledgeの設定を行います。

ブラウザからknowledgeへアクセスします。(http://[tomcatサーバーのIP]:[tomcatサーバーのポート]/knowledge )

knowledgeのトップページが表示されるので、中央の「GetStarted!」をクリックします。

knowledgeのトップページ

右上のサインインをクリックし、初期管理者にてサインインします。(id:admin,password:admin123)

knowledgeへサインイン

[システム設定]の[ユーザー管理]をクリックし、新たに管理者を追加します。

管理者の作成

管理者を作成後、サインアウトし作成した管理者でサインインし、初期管理者を削除します。

次にデータベースの設定を行います。[システム設定]の[データ管理]にある「データベースの接続先変更」をクリックし、 データベースの接続先変更画面を表示します。

driverClassを「org.postgresql.Driver(9.3-1103-jdbc41)」へ変更し、URLへ接続文字列を次のように設定します。

jdbc:postgresql://[ホスト名]:[ポート番号]/[データベース名]

ここでは「jdbc:postgresql://localhost:5432/knowledge」のように設定しました。

※接続文字列の設定は、v1.3.0以降わかりやすくなっています。

「user」と「password」には、データベースに設定したuserとpasswordを設定し、 「schema」はpublicとしました。

必要最低限の設定は以上です。

実際の運用は、複数のユーザで情報を共有していくと思います。knowledgeでは、4つのユーザ登録方法が 用意されているので運用にあった方法で設定します。

  • 管理者が登録する
  • ユーザ自身でメールアドレスで登録し、管理者が承認する
  • ユーザ自身でメールアドレスを登録し、システムから招待のメールを出す(メール送信設定が必要です)
  • ユーザ自身で自由に登録(メールアドレスの重複チェックのみ行います)

以上でknowledgeを使う準備ができました。