Skip to content

アノテーションサーバーのデプロイ

実際の研究のために Potato アノテーションサーバーをデプロイする方法、認証の選択肢、HTTPS、そして Docker やリバースプロキシを用いた本番環境の構成を解説します。

アノテーション研究を本格的に実施するということは、Potato を自分のノートパソコンから、アノテーターがアクセスできるサーバーへ移し、認証情報とデータを守るために適切なログイン方式と HTTPS を備えることを意味します。 本ガイドではデプロイの選択肢を扱います。手順ごとのセットアップはローカル開発とデプロイのセクションを参照してください。

認証方式を選ぶ

ログイン方式をアノテーターの集団に合わせます。

  • パスワードなし:アノテーターはユーザー名だけを入力します。信頼できる内部チームや、プラットフォームが既にワーカーを識別済みのクラウドソーシング研究に向いています。パスワードなしログインを参照。
  • パスワード:管理されたユーザー一覧で、名前の決まった固定のアノテーター向けです。
  • OAuth / SSO:Google や GitHub、あるいは所属機関のシングルサインオンでサインインします。大規模または機関単位のデプロイに最適です。

HTTPS の背後に置く

実運用のデプロイはすべて HTTPS で配信し、ユーザー名・回答・あらゆる個人データを通信経路上で暗号化すべきです。よくあるパターンは、Potato の前段で TLS を終端する nginx のようなリバースプロキシを置くか、TLS を肩代わりしてくれるホスティングプラットフォームを使うことです。

典型的な本番スタック

  • 本番用のサーバープロセスの下で動く Potato
  • TLS と静的アセットを処理するリバースプロキシとしての nginx(または同等品)。
  • コンテナ化する場合に、再現性のある形でパッケージングするための Docker
  • 証明書付きの公開 DNS 名(Let's Encrypt は無料です)。

まずまったく同じ設定をローカルで試運用し、その後同じ設定をデプロイします。変わるのは URL、認証、TLS だけです。

研究を運営する

  • 管理ダッシュボードで進捗、処理量、そして一致度を見守ります。
  • 出力ディレクトリを定期的にバックアップします。アノテーションはそこに書き込まれます。
  • クラウドソーシング研究については、Prolific と MTurk で研究を実施するを参照してください。

さらに読む