บอกลาแฟ้มเอกสารรกบ้าน: คู่มือติดตั้ง Paperless-ngx ระบบจัดการเอกสารดิจิทัลอัจฉริยะบน Home Server ด้วย Docker
เปลี่ยนกองเอกสารกระดาษรกบ้านให้เป็นคลังความรู้ดิจิทัลอัจฉริยะที่ค้นหาคำได้ 100% ด้วยคู่มือติดตั้ง Paperless-ngx บน Home Server ด้วย Docker พร้อมวิธีเซ็ตภาษาไทยในการถอดข้อความอัตโนมัติ
คุณเคยกวาดสายตามองไปรอบบ้านแล้วเจอกองเอกสารกระดาษที่สุมกันอยู่ตามซอกมุมต่างๆ ไหมครับ? ไม่ว่าจะเป็นใบเสร็จรับเงิน ใบแจ้งหนี้ประปา-ไฟฟ้า เอกสารคู่มือการใช้งานเครื่องใช้ไฟฟ้า ใบรับประกันสินค้า หรือเอกสารสำคัญทางการแพทย์
การเก็บเอกสารเหล่านี้ในรูปแบบกระดาษนอกจากจะกินพื้นที่ในบ้านและหาเจอยากแล้ว การเปลี่ยนมาสแกนเก็บไว้บนบริการคลาวด์สาธารณะอย่าง Google Drive หรือ Dropbox ก็อาจสร้างความกังวลเรื่องความเป็นส่วนตัว เพราะเอกสารเหล่านี้มีข้อมูลส่วนบุคคลที่ละเอียดอ่อนมาก เช่น เลขบัตรประชาชน ที่อยู่ หรือประวัติทางการเงิน
เพื่อแก้ปัญหานี้และคงความเป็นเจ้าของข้อมูลแบบ 100% เครื่องมือที่ตอบโจทย์ที่สุดในหมวด Self-Hosting สำหรับการสร้าง Private Brain OS คือ Paperless-ngx ครับ มันคือระบบจัดการเอกสารส่วนตัวที่จะเปลี่ยนเอกสารกระดาษทั้งหมดของคุณให้กลายเป็นไฟล์ดิจิทัลที่ค้นหาคำในภาพได้และเป็นระเบียบอย่างน่าอัศจรรย์
Paperless-ngx คืออะไร?
Paperless-ngx คือซอฟต์แวร์ระบบจัดการเอกสาร (Document Management System หรือ DMS) แบบโอเพนซอร์ส (Open-source) ที่ทำงานบนเว็บเบราว์เซอร์ โดยมีหน้าที่หลักในการสแกน จัดทำดัชนี และเก็บรักษาเอกสารดิจิทัลของคุณอย่างปลอดภัยใน Home Server
ฟีเจอร์เด่นที่ทำให้มันเหนือกว่าการเก็บไฟล์ในโฟลเดอร์ทั่วไป ได้แก่: * ระบบ OCR (Optical Character Recognition) อัจฉริยะ: ใช้ Tesseract OCR ในการสแกนและอ่านข้อความในรูปภาพหรือไฟล์ PDF ทำให้คุณสามารถค้นหาข้อมูลจากข้อความที่อยู่ด้านในเอกสารได้ทันที (รองรับภาษาไทยและภาษาอังกฤษ) * การจำแนกประเภทอัตโนมัติ (Auto-tagging): มีอัลกอริทึม Machine Learning ขนาดเล็กในตัวที่จะเรียนรู้พฤติกรรมการจัดหมวดหมู่ของคุณ เมื่อคุณอัปโหลดเอกสารใหม่ ระบบจะช่วยเดาประเภท Tag, Category, และ Correspondent (ผู้ส่ง) ให้โดยอัตโนมัติ * Consumption Directory: มีโฟลเดอร์รับเอกสารพิเศษที่คุณสามารถโยนไฟล์ที่ต้องการสแกนเข้าไป แล้วระบบจะนำไปประมวลผล จัดการ และย้ายเข้าสู่ระบบให้อัตโนมัติโดยที่คุณไม่ต้องกดอัปโหลดผ่านหน้าเว็บ
สิ่งที่ต้องเตรียมก่อนเริ่มใช้งาน
ก่อนเริ่มการติดตั้ง คุณต้องมีระบบพื้นฐานเหล่านี้เตรียมไว้บนเครื่อง Home Server: 1. Docker และ Docker Compose ติดตั้งอยู่บน Linux Home Server 2. โฟลเดอร์สำหรับเก็บข้อมูลที่เข้าถึงได้และมีพื้นที่เพียงพอ 3. โทรศัพท์มือถือที่สามารถสแกนภาพเอกสารเป็น PDF ได้ (เช่น ใช้แอปพลิเคชันอย่าง SwiftScan, Genius Scan หรือ Adobe Scan)
ขั้นตอนที่ 1: เตรียมโครงสร้างโฟลเดอร์และเขียน Docker Compose
เริ่มต้นเชื่อมต่อ SSH เข้าไปยัง Home Server ของคุณ จากนั้นสร้างโฟลเดอร์สำหรับโครงการ Paperless-ngx:
mkdir -p ~/paperless-ngx/data ~/paperless-ngx/media ~/paperless-ngx/consume ~/paperless-ngx/export
cd ~/paperless-ngx
อธิบายเพิ่มเติม: โฟลเดอร์ consume คือโฟลเดอร์สำหรับโยนไฟล์เข้าไปเพื่อให้ระบบนำไปประมวลผลอัตโนมัติ ส่วน media คือโฟลเดอร์ที่จะจัดเก็บไฟล์เอกสารต้นฉบับของคุณไว้
ถัดไป ให้สร้างไฟล์ docker-compose.yml ด้วยคำสั่งแก้ไขข้อความที่คุณถนัด และใส่คอนฟิกูเรชันนี้ลงไป:
version: '3.8'
services:
redis:
image: docker.io/library/redis:7
container_name: paperless-redis
restart: always
volumes:
- ./redis-data:/data
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
container_name: paperless-webserver
restart: always
depends_on:
- redis
ports:
- "8000:8000"
volumes:
- ./data:/usr/src/paperless/data
- ./media:/usr/src/paperless/media
- ./consume:/usr/src/paperless/consume
- ./export:/usr/src/paperless/export
environment:
- PAPERLESS_REDIS=redis://redis:6379
- PAPERLESS_TIME_ZONE=Asia/Bangkok
- PAPERLESS_OCR_LANGUAGE=tha+eng
- PAPERLESS_APT_PACKAGES=tesseract-ocr-tha
จุดสำคัญ: สังเกตที่ตัวแปรสิ่งแวดล้อม PAPERLESS_APT_PACKAGES=tesseract-ocr-tha ตัวแปรนี้จะสั่งให้คอนเทนเนอร์ดาวน์โหลดแพ็กเกจภาษาไทยสำหรับ Tesseract OCR โดยอัตโนมัติเมื่อรันขึ้นมาเป็นครั้งแรก และตัวแปร PAPERLESS_OCR_LANGUAGE=tha+eng จะตั้งค่าให้ระบบสแกนเอกสารโดยอิงทั้งภาษาไทยและอังกฤษควบคู่กัน
ขั้นตอนที่ 2: เริ่มต้นระบบและสร้างบัญชีผู้ใช้งาน
สั่งรันบริการขึ้นมาด้วยคำสั่ง Docker:
docker compose up -d
รอจนกระทั่งดาวน์โหลดและรันสำเร็จ (ในครั้งแรกระบบจะใช้เวลาดาวน์โหลดตัวอ่านภาษาไทยเล็กน้อย) เมื่อรันเสร็จแล้ว คุณจำเป็นต้องสร้างบัญชีผู้ดูแลระบบ (Superuser) เพื่อใช้เข้าสู่ระบบหลังบ้านด้วยคำสั่ง:
docker compose run --rm webserver createsuperuser
ระบบจะถามชื่อผู้ใช้งาน (Username), อีเมล และรหัสผ่าน ให้กรอกตามที่คุณต้องการลงไป
ขั้นตอนที่ 3: เริ่มต้นใช้งานระบบจัดการเอกสารอัจฉริยะ
เมื่อสร้างเสร็จแล้ว ให้เปิดเว็บเบราว์เซอร์แล้วเข้าไปที่ http://<IP-เครื่อง-Home-Server>:8000 คุณจะพบหน้าต่างล็อกอินของ Paperless-ngx ให้ล็อกอินด้วยรหัสผ่านที่เพิ่งสร้างในขั้นตอนก่อนหน้า
ทดสอบใช้งานโดยการลากไฟล์เอกสาร PDF หรือรูปภาพใบเสร็จเข้าไปในหน้าเว็บ ระบบจะทำการดึงไฟล์ไปประมวลผล (OCR) ทันที คุณสามารถคลิกเข้าไปดูเอกสารเพื่อตรวจสอบว่าระบบอ่านตัวอักษรภาษาไทยในภาพได้ถูกต้องหรือไม่ ซึ่งคุณจะพบว่าสามารถครอบหรือไฮไลต์เลือกข้อความภาษาไทยในไฟล์ภาพนั้นเพื่อคัดลอก (Copy) ไปใช้งานต่อได้เลย!
นอกจากนี้ คุณยังสามารถใช้กลไกการซิงก์โฟลเดอร์ร่วมกับแอปพลิเคชันอย่าง Nextcloud หรือ Syncthing ในการเชื่อมโยงโฟลเดอร์สแกนบนสมาร์ทโฟนเข้ากับโฟลเดอร์ consume ของ Paperless-ngx โดยตรง เพื่อให้การโยนไฟล์กระดาษจากมือถือไปเก็บที่ Home Server เกิดขึ้นแบบอัตโนมัติ 100%
บทสรุป
การเปลี่ยนกองเอกสารในบ้านให้เป็นดิจิทัลด้วย Paperless-ngx ไม่ใช่เพียงแค่การลดการใช้กระดาษและเพิ่มความสะอาดให้บ้าน แต่เป็นการก้าวเข้าสู่ระบบ Local-first และ Data Ownership ที่แท้จริง ข้อมูลสำคัญในครอบครัวจะอยู่บนอุปกรณ์ของคุณ ปลอดภัยจากการเข้าถึงของบุคคลภายนอก และพร้อมทำงานร่วมกับฐานข้อมูลความรู้ส่วนบุคคลของคุณ (เช่น การลิงก์เอกสารอ้างอิงเข้าไปในโน้ต Obsidian) ตลอดไปครับ