Paperless-ngx:自分専用の検索可能な文書アーカイブを作る方法
契約書に重要な金額が書かれていたことは覚えていても、ファイル名は scan_2024_03_17.pdf で、似たようなファイルが何百件も並んでいる。通常のファイルマネージャーは名前でしか検索できませんが、必要な言葉はスキャン画像の中にあります。
Paperless-ngx はこの問題を解決します。PDF、領収書の写真、メールの添付ファイルをアップロードすると、サービスが文字を認識して索引を作成し、ばらばらのファイルを一つのアーカイブにまとめます。その後は、姓、住所、口座番号、ページ内の任意の語句から文書を見つけられます。
Paperless-ngx とは
Paperless-ngx は、無料でオープンソースの文書管理システムです。自分のサーバーにインストールし、さまざまな場所からファイルを受け取り、OCR を実行して、内容から検索できるようにします。
一つの固定的なフォルダー構造に頼るのではなく、取引先、文書タイプ、タグ、日付、カスタムフィールド、保存ルールを使います。そのため、2026 年の電気料金請求書、特定の物件に関する文書、まもなく期限が切れる保証書などを数秒で表示できます。
Paperless-ngx が通常のフォルダーより便利な理由
文書が少なく、自分の命名ルールを覚えている間は、フォルダーでも問題ありません。数年たつと、書類、スキャン、新規、要整理 といったディレクトリが増え、必要なファイルを探すのが難しくなります。
| 通常のフォルダー | Paperless-ngx |
|---|---|
| ファイル名で検索 | 文書内の文字を検索 |
| 一つのファイルは一つのフォルダー | 複数のタグと属性を付与可能 |
| 手作業で命名・分類 | メタデータを自動付与 |
| 添付ファイルを手動で保存 | メールから自動インポート |
| スキャンは画像のまま | OCR により文字を検索可能にする |
保存先のディレクトリを思い出そうとする代わりに、文書内の単語を一つ覚えていれば十分です。
Paperless-ngx がファイルを処理する流れ
アップロード後、サービスは次の処理を行います。
- 元のファイルを保存する。
- 既存の文字情報を抽出するか、OCR を開始する。
- 必要に応じて保存用 PDF とサムネイルを作成する。
- 内容を全文検索インデックスに追加する。
- ルールを適用し、取引先、種類、タグ、保存先を提案する。
最初はアップロードと検索だけを使い、自動化は後から追加できます。
Paperless-ngx の特に便利な機能
スキャン画像内の検索
OCR 後は、契約書を住所から、請求書を顧客番号から、レシートを機器の型番から探せます。たとえば「中途解約」と検索すれば、元の PDF が画像だけで構成されていても、その語句を含む文書が表示されます。
認識精度はスキャン品質に左右されます。まっすぐでコントラストの高いページは、暗く斜めから撮影した写真より正確に認識されます。ロシア語と英語が混在するアーカイブでは、両方の OCR 言語をインストールすることが重要です。
自動分類
Paperless-ngx は、新しい文書をすでに整理済みの文書と照合できます。同じ事業者から届いた請求書を数件手動で分類すると、次のファイルに対して同じ取引先、種類、タグを提案するよう学習します。
厳密な処理が必要な場合は、本文、ファイル名、取得元、アップロード先フォルダーを条件にルールを作成できます。
メールからのインポート
サービスは IMAP 経由でメールボックスを確認し、ルールに従ってメールを処理できます。たとえば、特定の仕入先から届いた PDF 添付だけを取得してアーカイブへ送り、その後メールを既読にしたり別のフォルダーへ移動したりできます。
請求書が受信トレイにたまり続けることがなくなり、スキャン文書と一緒に検索できるようになります。
ワークフロー、フィールド、保存済みビュー
ワークフローは、文書のアップロード、追加、変更時、またはスケジュールに従って処理を実行します。所有者の割り当て、タグの追加、種類の選択、保存先の設定が可能です。
カスタムフィールドを使うと、アーカイブを小さなデータベースのように扱えます。契約書には終了日、請求書には金額と支払期限、機器にはシリアル番号を保存できます。保存済みビューでは、たとえば「支払いが必要」や「今月保証が切れる」といった一覧を表示できます。
バーコードを使った一括スキャン
Paperless-ngx は、バーコードを使って一つの大きなスキャンを複数の文書に分割できます。紙の間に区切りページを挟んだり、各文書の最初のページに ASN コードを貼ったりできます。
ASN はアーカイブシリアル番号で、デジタルコピーと紙の原本を結び付けます。大量の紙をまとめて電子化するときに便利です。
文書バージョンと任意の AI
Paperless-ngx 3.x 系では、文書バージョン、共有アクセス用のリンクセット、組み込み AI 機能が追加されました。モデルを接続すると、サービスがメタデータを提案したり、文書に関する質問に答えたりできます。
主要機能に AI は不要です。OCR、検索、ルール、タグ、メールインポートは AI なしで動作します。外部 AI API を使う場合は一部の文字情報がサーバー外へ送られる可能性があり、ローカルモデルを使う場合はより多くのリソースが必要です。
Paperless-ngx が向いている人
個人・家族のアーカイブ: 契約書、保険証券、明細書、保証書、レシート、住宅関連文書、機器の取扱説明書。
フリーランサーや小規模事業者: 請求書、検収書、契約書、経費資料、取引先とのやり取り。メールインポートにより手作業を減らし、アクセス権限によって複数ユーザーで文書を共有できます。
管理業務: 原始文書の素早い検索、仕入先や期間ごとの抽出、未処理ファイルのキュー管理。
Paperless-ngx は、会計ソフト、電子署名、企業向け ECM システムの代わりにはなりません。
Paperless-ngx に必要なサーバー構成
負荷は、ページ数、スキャン品質、アップロード頻度、追加コンポーネントによって変わります。最初の目安として、次の構成を使えます。
| 用途 | CPU | RAM | ディスク |
|---|---|---|---|
| 個人用アーカイブ | 2 vCPU | 2 GB | NVMe 30~50 GB 以上 |
| 家族または小規模チーム | 2~4 vCPU | 4 GB | NVMe 60~100 GB 以上 |
| 大量処理、Office ファイル、ローカル AI | 4 vCPU 以上 | 8 GB 以上 | アーカイブ容量に余裕を加える |
性能の低いサーバーでも画面は正常に動くことがありますが、大きな文書の OCR は遅くなります。Word、Excel、その他のオフィス形式を処理する Tika と Gotenberg もメモリ使用量を増やします。
ディスクには余裕を持たせてください。元ファイルに加えて、保存用バージョン、サムネイル、インデックス、データベース、一時ファイルが保存される場合があります。バックアップ用の別容量も必要です。
Docker を使って VPS に Paperless-ngx をインストールする
最も簡単で正式にサポートされている方法は Docker Compose です。Linux サーバー、Docker Engine、Compose プラグインが必要です。
公式プロジェクトは対話式インストーラーを提供しています。
bash -c "$(curl -L https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/install-paperless-ngx.sh)"インストール先ディレクトリ、データベース、ポート、OCR 言語、追加コンポーネント、管理者アカウントを尋ねた後、Compose 設定を作成してコンテナを起動します。
本番サーバーでは、まずスクリプトをダウンロードして内容を確認する方が安全です。
curl -L https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/install-paperless-ngx.sh \
-o install-paperless-ngx.sh
less install-paperless-ngx.sh
bash install-paperless-ngx.shインストール先ディレクトリから、次のコマンドで起動状態を確認できます。
docker compose ps
docker compose logs -f webserverロシア語と英語の OCR には通常 rus+eng を指定し、Docker に追加言語データ rus eng をインストールします。
アプリケーションの内部ポートを直接公開しないでください。リバースプロキシを介してドメインを接続し、HTTPS を有効にして不要なポートを閉じます。個人用アーカイブなら、VPN 経由のアクセスだけに限定するとさらに安全です。
tropic.host の VPS で Paperless-ngx を運用する
小規模なアーカイブには、2 vCPU、2~4 GB RAM、NVMe ストレージを備えた VPS が適しています。tropic.host では Ubuntu を導入し、Docker をインストールして、自宅に NAS を置かなくてもパソコンやスマートフォンから Paperless-ngx を利用できます。
VPS は常時稼働するため、サービスはメール添付を定期的に取得できます。ただし文書には個人情報が含まれることが多いため、HTTPS または VPN、SSH 鍵、制限の厳しいファイアウォール、独立したバックアップを使用してください。
セキュリティとバックアップ
Paperless-ngx には、文書向けの組み込みエンドツーエンド暗号化はありません。サーバー、Docker ボリューム、またはバックアップへ完全にアクセスできるユーザーは、アーカイブを読める可能性があります。
最低限必要な対策は次のとおりです。
- 信頼できるインフラストラクチャだけでサービスを運用する。
- システムとコンテナを更新する。
- SSH アクセスを鍵認証に限定する。
- 暗号化したコピーをメインサーバーの外に保存する。
- 定期的に復元をテストする。
移行とバックアップには、組み込みの document_exporter を利用できます。
docker compose exec webserver document_exporter ../exportエクスポート先ディレクトリを別の機器または独立したストレージにコピーしてください。同じ VPS 上のコピーでは、ディスク障害、誤削除、アクセス喪失から保護できません。
Paperless-ngx は導入する価値があるか
Paperless-ngx は、問題がファイルの保存ではなく、見つけることに移ったときに役立ちます。スキャン、添付ファイル、分かりにくい名前の PDF を、内容で検索でき、統一ルールで処理されるアーカイブへ変えます。
最初は、サービスをインストールし、OCR 言語を設定して、最初のファイルをアップロードするだけで十分です。タグ、メールインポート、ワークフロー、バーコード、AI 機能は、明確な反復作業が見えてから追加するとよいでしょう。
FAQ
Paperless-ngx は無料で使えますか?
はい。オープンソースのプロジェクトです。費用が発生するのは、機器、VPS、ドメイン、外部サービスだけです。
Paperless-ngx はロシア語の文字を認識できますか?
はい。OCR では Tesseract の rus 言語パッケージを使用します。複数言語のアーカイブでは通常 rus+eng を設定します。
OCR 後に元のファイルは削除されますか?
いいえ。元のファイルは保持されます。設定によっては、別の保存用 PDF が横に作成される場合があります。
スマートフォンから文書をアップロードできますか?
はい。Web インターフェース、API、対応モバイルアプリ、または接続済みメールアドレスへの転送を利用できます。
VPS のバックアップだけで十分ですか?
VPS のスナップショットは役立ちますが、組み込みエクスポーターと組み合わせ、コピーを別の場所に保存する方が安全です。アーカイブを作るだけでなく、クリーンな環境への復元をテストすることも重要です。
