Collabora OnlineをSeafileに接続する方法:設定オプションと手順

Seafileは、ストレージサーバーとオンラインエディター間で文書情報やファイルコンテンツを交換できるプロトコルであるWOPIを介して、Collabora OnlineでサポートされているOfficeファイルを開くことができます。最適なデプロイメントは、Seafileの実行場所、HTTPSとリバースプロキシの管理方法、そしてCollaboraを同じDockerネットワーク上に配置するか、別のサーバー上に配置するかによって異なります。

このガイドは、最新のSeafile管理者マニュアルのCollabora統合手順(Seafile 14.0ドキュメント、2026年10月6日確認)に基づいています。Docker Composeファイルとイメージタグは変更される可能性があるため、古いチュートリアルのCompose構成全体をコピーするのではなく、インストールされているSeafileリリースのファイルを使用してください。

どの導入形態を選択すべきでしょうか?

オプション最適なフィット感主なトレードオフ
シーファイル横のコラボラコンテナSeafileに付属のComposeファイルを使用したシングルノードDockerインストール最短経路と内部サービス名によるネットワーク接続を実現するが、両サービスとも1つのホストのCPU、メモリ、およびメンテナンスウィンドウを共有する。
Collaboraは別のホスト上で動作しています。既存のCollaboraサービス、個別のキャパシティプランニング、またはマルチホスト展開独立したスケーリングとアップグレードが可能ですが、公開HTTPSエンドポイント、リバースプロキシ、およびCollaboraとSeafile間の信頼性の高いネットワークアクセスが必要です。

新規のシングルノードDockerデプロイメントの場合は、Seafileに付属のファイルから始めますcollabora.yml。既存のスタンドアロンCollaboraサーバーまたはクラスターの場合は、Collabora独自のインストールガイドを使用し、Seafileの検出URLを外部Collaboraアドレスに設定します。Seafile統合ガイドでは、SeafileにHTTPSが必要であると記載されており、別のCollaboraノードは標準ポート443でHTTPSを使用し、ポート9980のCollaboraサービスにリバースプロキシする必要があるとされています。Seafile Collaboraオンライン統合ガイドとCollaboraインストールドキュメントを参照してください。

始める前に

  • Seafileサーバーが有効な証明書を使用してHTTPS経由でアクセス可能であることを確認してください。Seafileのガイドでは、この統合にはHTTPSが必要であると明記されています。
  • デプロイメントの種類(現在のDockerシングルノード構成、バイナリインストール、またはマルチホスト/クラスタ構成)を指定してください。ファイル名とプロキシルーティングは、その選択によって異なります。
  • office.example.comCollaboraにユーザーのブラウザから独立してアクセスする場合は、例えば のようなCollaboraホスト名を選択してください。Seafileを設定する前に、DNSとTLS証明書が正しく機能するようにしてください。
  • Seafileseahub_settings.pyおよび必要に応じてDocker.envファイルへの管理者アクセス権を取得してください。Collaboraの管理者パスワードは保護された環境ファイルに保存し、スクリーンショット、ログ、または公開リポジトリには公開しないでください。

Seafileのドキュメントには、サポートされているComposeレイアウトにおける同一ホスト環境でのDockerの手順が記載されています。リバースプロキシ、Composeプロジェクト、またはネットワークが異なる場合は、以下の例の値を出発点として、ご自身のデプロイメント環境でサービス名とルートを確認してください。

オプションA:SeafileのDockerデプロイメントにCollaboraを追加する

1. 公式のCollabora Composeファイルを追加します。

Seafile Composeの設定ファイルが格納されているディレクトリから、使用しているSeafileリリースに対応するCollaboraファイルをダウンロードしてください。現在のマニュアルに記載されているSeafile 14.0のパスは以下のとおりです。

wget https://manual.seafile.com/14.0/repo/docker/collabora.yml

既存のリストを開いて.env追加します。現在のエントリはすべて保持されます。たとえば、Seafileサーバー、Caddy、およびSeaDocファイルが既にリストされているインストール環境では、リストを置き換えるのではなく、Collaboraファイルが追加されます。collabora.ymlCOMPOSE_FILE

COMPOSE_FILE='seafile-server.yml,caddy.yml,seadoc.yml,collabora.yml'

実際のリストは異なる場合があります。この例に合わせるためだけに、現在のリバースプロキシやその他のサービスを削除しないでください。Compose ファイルは、Seafile のバンドルされたデプロイメントで想定されるコンテナとネットワークの設定を定義します。

2. Collaboraの環境値を設定する

Seafileで説明されている変数を同じ.envファイルに追加してください。現在の例ではローリングcollabora/codeイメージ名を使用していますが、再現可能なアップグレードが必要なチームは、環境でサポートされているCollaboraリリースタグを選択し、意図的に固定する必要があります。動作中のエディタサービスを変更する前に、リリースノートを確認し、アップグレードをテストしてください。

COLLABORA_IMAGE=collabora/code
COLLABORA_PORT=6232
COLLABORA_USERNAME=admin
COLLABORA_PASSWORD=replace-with-a-long-random-secret
COLLABORA_ENABLE_ADMIN_CONSOLE=true
COLLABORA_REMOTE_FONT=
COLLABORA_ENABLE_FILE_LOGGING=false

ポート値は、SeafileのComposeサンプルで使用されるホスト側のポート番号です。Collaboraはコンテナ内でポート9980をリッスンします。管理コンソールは非公開にするか、プロキシ/ファイアウォールでアクセスを制限してください。上記のユーザー名とパスワードは例です。固有の認証情報を選択し、ファイルを保護してください。組織で管理コンソールが不要な場合は、Composeテンプレートでサポートされている設定に従って無効にしてください。

3. SeafileのWOPI接続を設定する

Collabora統合設定を編集しseahub_settings.pyて追加します。同じComposeネットワーク上のコンテナの場合、Seafileの現在の例では内部サービス名を使用していますcollabora。

OFFICE_SERVER_TYPE = 'CollaboraOffice'
ENABLE_OFFICE_WEB_APP = True
OFFICE_WEB_APP_BASE_URL = 'http://collabora:9980/hosting/discovery'
WOPI_ACCESS_TOKEN_EXPIRATION = 30 * 60
OFFICE_PREVIEW_MAX_SIZE = 30 * 1024 * 1024
ENABLE_OFFICE_WEB_APP_EDIT = True

OFFICE_WEB_APP_FILE_EXTENSION = (
    'odp', 'ods', 'odt', 'xls', 'xlsb', 'xlsm', 'xlsx',
    'ppsx', 'ppt', 'pptm', 'pptx', 'doc', 'docm', 'docx'
)
OFFICE_WEB_APP_EDIT_FILE_EXTENSION = (
    'odp', 'ods', 'odt', 'xls', 'xlsb', 'xlsm', 'xlsx',
    'ppsx', 'ppt', 'pptm', 'pptx', 'doc', 'docm', 'docx'
)

内部検出URLは、共有Dockerネットワーク上でのSeafileとCollabora間の通信に使用されます。ユーザーのブラウザは、統合によって提供されるCollaboraアドレスにアクセスできる必要があります。公式のComposeファイルとプロキシ設定に従って、ブラウザ向けのルートが安全に公開されるようにしてください。Docker内部でのみ解決されるコンテナ専用のホスト名は、公開ブラウザURLとして使用できません。

ファイル拡張子リストは、ユーザーが必要とする形式と、Collaboraのビルドがサポートする形式に限定してください。上記のプレビューサイズ設定は、Seafileの現在の例における30MiBの値です。より大きなドキュメントの場合は、メモリとパフォーマンスへの影響を考慮した上で、意図的に制限値を変更する必要があるかもしれません。

4. サービスを開始または更新する

Composeの設定を検証してから、プロジェクトディレクトリからスタックを起動します。

docker compose config
docker compose up -d

Seafile のガイドには、変更後に Seafile を再起動するように記載されていますseahub_settings.py。Docker デプロイメントの場合、docker compose up -d更新された Compose 設定が適用されます。設定の編集が有効にならない場合は、リリース用のメソッドを使用して Seafile サービスを再起動してください。docker compose downスタック全体を停止するつもりがない限り、広範囲にわたる変更は避けてください。

オプションB:Seafileを別のホスト上のCollaboraに接続する

Collabora の公式展開およびリバースプロキシの手順に従って、Collabora をインストールして公開します。通常の公開エンドポイントでは HTTPS を使用し、リクエストを Collabora の内部ポート 9980 にプロキシします。Seafile ホストが Collabora にアクセスできること、および Collabora が Seafile の HTTPS アドレスにアクセスできることを確認してください。WOPI ドキュメントの読み込みには、双方向のアクセスが重要です。

前のセクションの他の Seafile 設定はそのままにして、検出設定を実際の Collabora ホスト名に変更してください。

OFFICE_WEB_APP_BASE_URL = 'https://office.example.com/hosting/discovery'

実際のホスト名と証明書を使用してください。SeafileとCollaboraが実際にその名前が解決されるネットワークを共有している場合を除き、内部Dockerサービス名を含めないでください。ホストを分けることで、リソースとメンテナンスを独立して制御できますが、DNS、ファイアウォール、証明書、リバースプロキシの設定作業が必要になります。Seafileクラスタの場合は、単一ノードのComposeネットワークが適用されるという前提ではなく、クラスタのプロキシとサービス検出の設計に従ってください。

接続が正常に機能していることを確認する方法

  1. 別のホストを使用している場合は、ブラウザから開いてくださいhttps://office.example.com/hosting/discovery。同一ホスト環境の場合は、プロキシによって公開されているCollaboraのパブリックルートをテストしてください。応答が成功すれば、検出エンドポイントに到達可能であることを確認できますが、それだけではWOPI編集が機能することを証明するものではありません。
  2. Seafileにサインインし、設定済みの拡張子リストに含まれる、小さくて機密性の低いファイル.docx、ファイル.xlsx、またはファイルを開きます。.odt
  3. ファイルがCollaboraで開くことを確認し、無害な変更を加え、保存が完了するまで待ち、エディタを閉じます。
  4. Seafileでファイルを再度開き、変更が反映されていることを確認してください。より確実な確認方法として、ファイルのコピーをダウンロードし、想定される内容であることを確認してください。

安全に編集できるファイルでテストしてください。エディタが表示されても保存が成功しない場合は、部分的な成功にすぎません。WOPIはファイルを取得し、編集後のバージョンをSeafileに返すことができなければなりません。

よくある故障とその点検箇所

症状最初のチェック
Seafileはオンラインオフィスが利用できないと報告している。設定変更後にSeahubが再起動されたかどうか、検出URLをOFFICE_SERVER_TYPE確認してください。ENABLE_OFFICE_WEB_APP
サーバー側では検出機能が動作するが、ブラウザには空白のエディタが表示されるブラウザがHTTPS経由でCollaboraのパブリックホスト名にアクセスできることを確認し、プロキシパスとTLS証明書が正しいことを確認してください。内部Dockerホスト名は、ユーザーのブラウザから自動的にアクセスできるわけではありません。
エディタは読み込まれますが、ファイルを取得または保存できません。CollaboraとSeafileのログ、相互のネットワークアクセス、HTTPS証明書の信頼性、およびWOPIリクエストを確認してください。Seafileは、Seahubがiframeを作成し、ブラウザがCollaboraを読み込み、CollaboraがSeahubからファイルコンテンツをリクエストするというリクエストフローを記録しています。
オフィスファイルの一部のみが開きますプレビューおよび編集拡張機能のタプル、Seafileのプレビューサイズ制限、およびインストールされているCollaboraビルドでサポートされているフォーマットを確認してください。

Dockerログについては、Seafileドキュメントdocker logs seafile-collaboraを参照してください。Seafile/SeahubログとCollaboraの出力を照合し、プロキシでリクエストを関連付けてください。ドキュメントのURLやその他の機密性の高い運用詳細が公開される可能性がある場合は、詳細ログやファイルログを無期限に有効にしないでください。Collaboraの公式トラブルシューティングガイドには、Collabora側の障害に関する追加のチェック項目が記載されています。

どちらの選択肢が理にかなっているだろうか?

Seafileのインストール環境が単一のDockerホストであり、サポートされているCompose接続が必要で、SeafileとのCPUおよびメモリの共有が許容される場合は、バンドルされているコンテナを選択してください。既にCollaboraホストを運用している場合、独立した容量やアップグレードスケジュールが必要な場合、またはマルチホストアーキテクチャを統合していてHTTPSとネットワークルーティングを確実に維持できる場合は、別のCollaboraホストを選択してください。いずれの場合も、Seafileのリリースに対応したドキュメントに従い、ブラウザに公開するエンドポイントを安全に保ち、ユーザーがオンライン編集を利用する前に、ドキュメントの開閉と保存の両方を検証してください。

コメントを残す

Microsoft Wordで画像を移動する方法

Microsoft Wordで画像を移動する方法

Wordで画像をドラッグする方法、テキストの折り返しを選択する方法、段落内に画像を保持する方法、ページ上に画像を固定する方法、そして画像が移動しない場合のトラブルシューティング方法を学びましょう。

Excelにチェックボックスを挿入する方法:2つの簡単な方法

Excelにチェックボックスを挿入する方法:2つの簡単な方法

Excelのセル内ツールを使ってチェックボックスを挿入する方法、数式を使ってチェックされた項目の数を数える方法、古いデスクトップ版でリンクされたフォームコントロールを追加する方法を学びましょう。

Excelで文字を自動入力する方法:AからZ、そしてその先へ

Excelで文字を自動入力する方法:AからZ、そしてその先へ

Excelでフィルハンドル関数、SEQUENCE関数、または再利用可能なカスタムリストを使用して、AからZまでのアルファベット、小文字、またはZを超えるラベルを生成します。

Excelで取り消し線を引く方法:ショートカットと手順

Excelで取り消し線を引く方法:ショートカットと手順

Windows、Mac、Web版Excelで取り消し線を引く方法、セルの一部に書式を設定する方法、値を削除せずに行を削除する方法を学びましょう。

Microsoft Accessとは?そのデータベースツールはどのように機能するのか?

Microsoft Accessとは?そのデータベースツールはどのように機能するのか?

Microsoft Accessは、関連レコードの保存、クエリの作成、データ入力フォームの作成、レポートの生成を行うためのWindowsデータベースアプリケーションです。その仕組みと最適な活用シーンについて解説します。

Word 2010でグリッド線の高さと幅を変更する

Word 2010でグリッド線の高さと幅を変更する

Word 2010でグリッド線の高さと幅を調整する方法、表示される線の頻度を変更する方法、および下地となる水平方向と垂直方向の描画グリッドの間隔を設定する方法を学びましょう。

Office Outlook 2010 のインポートとエクスポート: PST ファイルを使用してデータを移動する

Office Outlook 2010 のインポートとエクスポート: PST ファイルを使用してデータを移動する

Outlook 2010にPSTファイルをインポートする方法、またはメール、連絡先、カレンダー、タスクをエクスポートする方法を学びましょう。正しいメニューに従い、フォルダの欠落や重複を避けてください。

Nucleus Kernelを使用してOutlook PSTファイルのパスワードを復元する

Nucleus Kernelを使用してOutlook PSTファイルのパスワードを復元する

Kernelが提供する最新の手順では、忘れてしまったOutlook PSTファイルのパスワードを復元する方法を解説します。正しいファイルの特定方法、バックアップの作成方法、ツールの制限事項の確認方法などが含まれています。

PowerPointスライドにライブWebページを挿入する方法

PowerPointスライドにライブWebページを挿入する方法

LiveWebアドインを使用すると、WebサイトをPowerPointスライドに配置し、サイズや更新動作を設定し、プレゼンテーション前に互換性を確認できます。

Access 2010データベースをフォームで開く方法

Access 2010データベースをフォームで開く方法

Access 2010データベースアプリケーションを、データ入力フォームに直接開くように設定し、オブジェクトリストを非表示にし、メニューを制限し、共有前に設定を確認します。