Tropic Host

Stirling PDF على خادم VPS: تثبيت محرر PDF خاص بك

2 دقيقة للقراءة
Tropic
Stirling PDF على خادم VPS: تثبيت محرر PDF خاص بك

Stirling PDF: كيفية تثبيت محرر PDF خاص بك على خادم VPS

لدمج عقد مع ملحق، أو ضغط نسخة ممسوحة ضوئياً من جواز سفر، أو إخفاء بيانات الدفع، يرفع كثير من الناس المستند إلى أول خدمة متاحة على الإنترنت. ومع الملف، قد تُرسل التوقيعات والعناوين والفواتير وغيرها من البيانات السرية إلى موقع تابع لجهة خارجية.

يقدم Stirling PDF نهجاً مختلفاً. فهو تطبيق ويب يضم عشرات الأدوات الخاصة بملفات PDF، ويمكنك تشغيله على خادم VPS تملكه. تُفتح الواجهة في متصفح الكمبيوتر أو الهاتف، بينما يعالج خادمك المستندات.

فيما يلي سنستعرض أهم ميزات Stirling PDF، ومتطلبات الخادم، وطريقة تثبيته على Ubuntu باستخدام Docker Compose مع المصادقة وHTTPS.

ما هو Stirling PDF؟

Stirling PDF منصة ذاتية الاستضافة لتحرير ملفات PDF ومعالجتها. وهي تجمع أكثر من 55 عملية، منها دمج الملفات وتقسيمها، وإعادة ترتيب الصفحات، والضغط، والتحويل، والتعرف الضوئي على الحروف OCR، والتوقيعات، والعلامات المائية، ومقارنة المستندات، وإزالة البيانات الوصفية والمعلومات السرية.

يمكن استخدام الخدمة كتطبيق سطح مكتب أو منتج سحابي أو خادم مستضاف ذاتياً. في وضع الاستضافة الذاتية، تعالج نسخة Stirling PDF الخاصة بك الملفات، ويمكن حماية الوصول إليها بكلمة مرور وHTTPS. الإصدار المجاني للخادم مخصص لمجموعات تضم حتى خمسة مستخدمين؛ وتتوفر إصدارات مدفوعة للفرق الأكبر وبعض ميزات المؤسسات.

الفرق الرئيسي عن محول عادي على الإنترنت هو التحكم. فأنت تختار مزود الخدمة وموقع الخادم والمستخدمين وقواعد الوصول. وفي الوقت نفسه، لا تحتاج إلى البحث عن موقع منفصل لكل عملية: إذ تحل واجهة واحدة محل مجموعة من الخدمات الخاصة بالضغط والتحويل والتوقيع وOCR.

أهم ميزات Stirling PDF

إدارة الصفحات بصرياً

في وضع Multi-Tool، يُعرض المستند على هيئة شبكة من الصور المصغرة. ويمكن سحب الصفحات وتدويرها وحذفها وتقسيمها وإدراجها في الموضع المطلوب وتصديرها بشكل انتقائي. يُرفع الملف مرة واحدة فقط، وتدعم التغييرات وظيفتي التراجع والإعادة.

OCR للمستندات الممسوحة ضوئياً

تضيف تقنية OCR طبقة نصية إلى ملف PDF الممسوح ضوئياً. بعد المعالجة، يمكنك البحث عن الكلمات في المستند وتحديد النص ونسخه. كما تتوفر وظائف تصحيح الميل وإزالة التشويش وتحسين التباين. بالنسبة إلى اللغة الروسية، تحتاج إلى إضافة حزمة Tesseract المسماة rus.traineddata بشكل منفصل.

إزالة البيانات الحساسة بأمان

لا تزيل مستطيلات سوداء موضوعة فوق رقم حساب النص الأصلي دائماً. تستطيع أداة Redact إزالة التطابقات من بنية ملف PDF بدلاً من تغطيتها بطبقة مرئية فقط. يمكنك تحديد منطقة يدوياً أو البحث في المستند بأكمله عن أرقام الهواتف وعناوين البريد الإلكتروني وأرقام البطاقات وغيرها من البيانات باستخدام الكلمات أو التعابير النمطية.

مقارنة الإصدارات وماسح الهاتف المحمول

توضح أداة Compare الكلمات التي أضيفت أو حُذفت بين نسختين من عقد أو تقرير أو مواصفة تقنية. أما للمستندات الورقية، فيتوفر ماسح ضوئي للهاتف المحمول: يظهر رمز QR على الكمبيوتر، ويرفع الهاتف الصور مباشرة إلى الجلسة الحالية، ثم تُحذف الملفات المؤقتة تلقائياً بعد التنزيل أو بعد عشر دقائق من عدم النشاط.

الأتمتة وواجهة API

تعمل Automate مثل وحدات الماكرو لملفات PDF. على سبيل المثال، يمكنك حفظ سير العمل التالي مرة واحدة:

OCR → remove blank pages → compress → add a watermark → set a password

بعد ذلك يمكن تطبيق سير العمل نفسه على ملفات جديدة من دون تكرار كل خطوة. كما يدعم Stirling PDF معالجة الملفات من مجلد تتم مراقبته، ويوفر REST API مع توثيق Swagger مدمج.

ما مواصفات VPS التي يحتاجها Stirling PDF؟

قد تتطلب معالجة ملف PDF ذاكرة أكبر بكثير من حجم الملف الأصلي نفسه. وتستهلك عملية OCR وتحويل الصفحات إلى صور وتحويل مستندات Office عبر LibreOffice موارد كبيرة بشكل خاص.

للنشر التجريبي، تكفي ذاكرة RAM بسعة 2 GB، لكن للاستخدام المنتظم من الأفضل اختيار:

  • معالجين افتراضيين vCPU؛
  • ذاكرة RAM بسعة 4 GB؛
  • مساحة حرة لا تقل عن 10–20 GB على قرص SSD أو NVMe؛
  • Ubuntu 22.04 أو 24.04.

إذا كان عدة مستخدمين يشغلون OCR أو التحويل في الوقت نفسه، فمن الأنسب اختيار 4 vCPU وذاكرة RAM بسعة 8 GB. وللخادم محدود الموارد، تتوفر صورة latest-ultra-lite، بينما تتضمن latest-fat خطوطاً وأدوات إضافية لتحويل بجودة أعلى. وتناسب صورة latest القياسية معظم المستخدمين.

تثبيت Stirling PDF باستخدام Docker Compose

في الإعداد التالي، يستمع الحاوي إلى الواجهة المحلية فقط. وسيمر الوصول الخارجي لاحقاً عبر Nginx مع HTTPS، لذلك لن يتم كشف المنفذ 8080 أمام الإنترنت بالكامل.

الخطوة 1. تثبيت Docker

ssh root@SERVER_IP
apt update && apt upgrade -y
apt install -y curl
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
rm get-docker.sh

تحقق من التثبيت:

docker --version
docker compose version

الخطوة 2. إنشاء إعداد Docker Compose

mkdir -p /opt/stirling-pdf/{configs,logs,pipeline}
cd /opt/stirling-pdf
nano docker-compose.yml

أضف الإعداد التالي:

services:
  stirling-pdf:
    image: docker.stirlingpdf.com/stirlingtools/stirling-pdf:latest
    container_name: stirling-pdf
    restart: unless-stopped
    ports:
      - "127.0.0.1:8080:8080"
    volumes:
      - ./configs:/configs
      - ./logs:/logs
      - ./pipeline:/pipeline
    environment:
      - SECURITY_ENABLELOGIN=true
      - SYSTEM_DEFAULTLOCALE=ru-RU
      - SYSTEM_GOOGLEVISIBILITY=false

شغّل الخدمة:

docker compose up -d
docker compose ps

للتشخيص، استخدم:

docker compose logs --tail=100 stirling-pdf

الخطوة 3. تسجيل الدخول لأول مرة

قبل إعداد النطاق، افتح الواجهة عبر نفق SSH. شغّل الأمر على الكمبيوتر:

ssh -L 8080:127.0.0.1:8080 root@SERVER_IP

انتقل إلى http://localhost:8080. بيانات الدخول الافتراضية لأول تسجيل هي اسم المستخدم admin وكلمة المرور stirling. غيّر كلمة المرور فوراً من إعدادات الحساب.

ربط النطاق وإعداد HTTPS

أنشئ سجل DNS من النوع A لعنوان مثل pdf.example.com ووجّهه إلى عنوان IP الخاص بالخادم. ثم ثبّت Nginx وCertbot:

apt install -y nginx certbot python3-certbot-nginx
nano /etc/nginx/sites-available/stirling-pdf

أضف الإعداد واستبدل اسم النطاق:

server {
    listen 80;
    server_name pdf.example.com;
    client_max_body_size 500M;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_read_timeout 300s;
    }
}

فعّل الموقع واحصل على شهادة:

ln -s /etc/nginx/sites-available/stirling-pdf /etc/nginx/sites-enabled/stirling-pdf
nginx -t
systemctl reload nginx
certbot --nginx -d pdf.example.com

أصبح Stirling PDF متاحاً الآن عبر HTTPS، بينما يظل المنفذ الداخلي 8080 مغلقاً. وللملفات الأكبر من 500 MB، ارفع قيمة client_max_body_size.

كيفية إضافة OCR باللغة الروسية

أنشئ مجلداً ونزّل حزم Tesseract الإنجليزية والروسية:

cd /opt/stirling-pdf
mkdir -p tessdata
curl -L -o tessdata/eng.traineddata \
  https://raw.githubusercontent.com/tesseract-ocr/tessdata_fast/main/eng.traineddata
curl -L -o tessdata/rus.traineddata \
  https://raw.githubusercontent.com/tesseract-ocr/tessdata_fast/main/rus.traineddata

أضف السطر التالي إلى قسم volumes في ملف docker-compose.yml:

      - ./tessdata:/usr/share/tessdata

طبّق التغييرات وتحقق من اللغات المتاحة:

docker compose up -d
docker exec stirling-pdf tesseract --list-langs

يجب أن تتضمن القائمة eng وrus.

الأمان والتحديثات والقيود

قبل الاستخدام المنتظم، غيّر كلمة المرور الافتراضية، وأبقِ المصادقة مفعّلة، ولا تكشف المنفذ 8080، واسمح عبر جدار الحماية باتصالات SSH وHTTP وHTTPS فقط. يجب تضمين مجلدي configs وpipeline في النسخ الاحتياطية. لا تُفعّل تحليلات Stirling PDF إلا بعد موافقة المستخدم، ويمكن للمسؤول تعطيلها بالكامل.

لتحديث التطبيق، شغّل:

cd /opt/stirling-pdf
docker compose pull
docker compose up -d

يغطي Stirling PDF معظم المهام اليومية، لكنه لا يحافظ دائماً على التخطيطات المعقدة عند التحويل بين PDF وتنسيقات Office. كما أن OCR لا يتعرف على بنية الجداول والمعادلات، وتكون جودة التعرف على الكتابة اليدوية أو النصوص الصغيرة جداً محدودة. للحصول على نتائج جيدة، استخدم عمليات مسح واضحة بدقة تقارب 300 DPI.

Stirling PDF على VPS من tropic.host

لا تتطلب الخدمة بطاقة رسومية؛ إذ إن ذاكرة RAM وأداء المعالج المستقر وسعة التخزين السريعة أهم. ومن الأفضل اختيار موقع قريب من المستخدمين، لأن المستندات الكبيرة تُرفع أولاً إلى الخادم ثم تُنزّل منه مرة أخرى.

لنسخة شخصية أو فريق صغير، يكفي عادةً خادم Linux VPS مزود بـ 2 vCPU وذاكرة RAM بسعة 4 GB. وعلى VPS من tropic.host، يمكنك تثبيت Ubuntu وتشغيل إعداد Docker Compose الموضح أعلاه واستضافة الواجهة على نطاق فرعي مستقل. وتصبح الذاكرة الإضافية مهمة بشكل خاص إذا كانت حاويات أخرى تعمل على الخادم نفسه.

الخلاصة

يحوّل Stirling PDF خادم VPS إلى خدمة ويب خاصة بك للمستندات. فهو يجمع عشرات الأدوات ويدعم OCR والإزالة الفعلية للبيانات السرية ومقارنة الإصدارات والمسح عبر الهاتف والأتمتة وواجهة API.

والسبب الرئيسي لاستضافته بنفسك هو التحكم في ملفاتك. فبالنسبة إلى العقود والفواتير والنماذج والمستندات الداخلية، تكون نسخة محمية بالمصادقة وHTTPS أكثر ملاءمة من مجموعة محولات عشوائية على الإنترنت.

الأسئلة الشائعة

هل Stirling PDF مجاني؟

نعم. يدعم الإصدار المجاني المستضاف ذاتياً ما يصل إلى خمسة مستخدمين. أما الفرق والمؤسسات الأكبر التي تحتاج إلى ميزات مؤسسية فتتطلب إصداراً مدفوعاً.

هل تغادر المستندات خادمي؟

في وضع الاستضافة الذاتية، تتم معالجتها بواسطة نسخة Stirling PDF الخاصة بك. ويعتمد مستوى الأمان النهائي على إعداد VPS وHTTPS وكلمات المرور والتحديثات وصلاحيات المسؤول.

هل تكفي ذاكرة RAM بسعة 2 GB؟

نعم للاختبار والعمليات الخفيفة. أما للاستخدام المنتظم وOCR والتحويل، فمن الأفضل اختيار ذاكرة RAM بسعة 4 GB، أو سعة أكبر عند تشغيل مهام متزامنة.

هل أحتاج إلى نطاق؟

لا. يمكن فتح الخدمة باستخدام عنوان IP أو عبر نفق SSH. ويفيد النطاق في الحصول على عنوان دائم سهل الاستخدام وإعداد HTTPS بطريقة صحيحة.

هل يدعم OCR باللغة الروسية؟

نعم. أضف ملف rus.traineddata إلى مجلد Tesseract واربطه بالحاوية.