لماذا تستضيف منصّة تدوينك ذاتياً
النشر على منصّة مغلقة يحرمك من التحكم في جمهورك، وبياناتك، وتحسين محركات البحث لديك. باستضافة Ghost أو WordPress ذاتياً على خادم VPS، تمتلك محتواك، وروابطك، وبيانات جمهورك، وقائمة مشتركيك. يقدّم WordPress، المكتوب بلغة PHP، منظومة من عشرات الآلاف من القوالب والإضافات: إنه أداة متعددة الاستخدامات تتحوّل إلى متجر إلكتروني، أو معرض أعمال، أو موقع تعريفي. أما Ghost، المكتوب بلغة Node.js، فمركَّز: محرّر مبسّط، وأداء أصيل، وعضوية ونشرات بريدية مدمجة دون إضافة، وواجهة أمامية سريعة بحكم التصميم. إن كنت تبني موقعاً غنيّاً بالميزات، فإن WordPress يفرض نفسه؛ وإن أردت النشر بسرعة وتحقيق الدخل عبر الاشتراك، فإن Ghost يتألّق.
فوائد الاستضافة الذاتية
- ملكية كاملة للمحتوى، والروابط، وبيانات الجمهور، دون تبعية لمنصّة.
- لا رسوم لكل مشترك ولا عمولة على الإيرادات (خلافاً للعروض المستضافة).
- حرية القوالب والإضافات (WordPress) أو تخصيص قالب Handlebars (Ghost).
- التحكم في تحسين محركات البحث التقني: الروابط، وخرائط الموقع، والبيانات الوصفية، وأداء التحميل.
- نشرات بريدية وعضوية مدمجة (Ghost) أو عبر إضافات (WordPress)، دون وسيط.
- نسخ احتياطية وترحيلات تحت سيطرتك، دون احتجاز في نظام مملوك.
| المعيار | Ghost | WordPress |
|---|---|---|
| التقنية | Node.js | PHP |
| قاعدة البيانات | MySQL 8 | MySQL / MariaDB |
| المنظومة | قوالب Handlebars، وتكاملات API | عشرات الآلاف من الإضافات والقوالب |
| النشرات البريدية / العضوية | أصلية، دون إضافة | عبر إضافات خارجية |
| الأداء الافتراضي | سريع جداً (واجهة أمامية خفيفة) | متغيّر، يعتمد على الإضافات/التخبئة |
| تعدد الاستخدامات | متمحور حول النشر والاشتراك | شامل (مدوّنة، متجر إلكتروني، موقع تعريفي) |
| الذاكرة الموصى بها | 1 إلى 2 غيغابايت | 1 إلى 2 غيغابايت (أكثر بحسب الإضافات) |
| الملمح المستهدف | المبدعون والوسائط المحقِّقة للدخل | أي مشروع ويب قابل للتوسيع |
المتطلبات لكل منصّة
يتطلّب Ghost حتماً MySQL 8 (لا MariaDB في الإنتاج) وNode.js، وهما مضمَّنان في صورته الرسمية على Docker. خادم VPS بـ 1 vCPU و2 غيغابايت من الذاكرة يدير مدوّنة مريحة. يعمل WordPress على 1 vCPU و1 غيغابايت لموقع خفيف، لكنه يرتفع بسرعة مع الإضافات وذاكرة تخبئة الكائنات: جهّز 2 غيغابايت وRedis بمجرد ارتفاع الزيارات. في الحالتين، يسرّع قرص NVMe العرض بوضوح. تحتاج إلى Docker Compose v2، ونطاق مخصّص (blog.mydomain.com)، ووسيط عكسي HTTPS، وبالنسبة لـ WordPress عناية بـ upload_max_filesize إذا كنت تنشر الكثير من الوسائط.
انشر Ghost (أو WordPress) على خادم VPS
التصريح عن قاعدة البيانات
بالنسبة لـ Ghost، خدمة mysql:8 بوحدة تخزين دائمة وبيانات اعتماد مخصّصة. بالنسبة لـ WordPress، mariadb:11 أو mysql:8 مناسبة. اعزلهما على شبكة Docker داخلية، غير معروضة للعموم.
إعداد حاوية التطبيق
بالنسبة لـ Ghost، صورة ghost:5-alpine مع url=https://blog.mydomain.com وdatabase__client=mysql ومعطيات الاتصال. بالنسبة لـ WordPress، صورة wordpress:php8.3-apache مع WORDPRESS_DB_HOST وبيانات الاعتماد.
ربط وحدات تخزين المحتوى
اربط /var/lib/ghost/content (Ghost) أو /var/www/html/wp-content (WordPress) على وحدة تخزين مخصّصة، للحفاظ على القوالب والصور والملفات المرفوعة أثناء تحديثات الصورة.
التشغيل والتهيئة
نفّذ docker compose up -d. يستمع Ghost على 2368، وWordPress على 80. اذهب إلى /ghost لإنشاء حساب مدير Ghost، أو اتبع معالج تثبيت WordPress.
الوسيط العكسي وHTTPS
وجّه blog.mydomain.com عبر Caddy/Traefik بشهادة Let's Encrypt تلقائية. تحقّق من أن الرابط المُعَدّ هو فعلاً بـ https من جهة التطبيق، وإلا فستكون الموارد وعمليات إعادة التوجيه غير مشفّرة.
إعداد إرسال البريد الإلكتروني والتخبئة
اربط خدمة SMTP (معاملاتية) لنشرات Ghost البريدية أو رسائل WordPress. فعّل ذاكرة تخبئة HTTP من جهة الوسيط، وبالنسبة لـ WordPress، ذاكرة تخبئة كائنات Redis لامتصاص الزيارات.
مع Ghost، احرص حتماً على إعداد البريد mail المعاملاتي منذ التثبيت: فبدون SMTP فعّال، يفشل إرسال النشرات البريدية وروابط الدخول السحرية (magic-link) للأعضاء بصمت، ولا تكتشف ذلك إلا عند أول إرسال. قدّم أيضاً الصور عبر تخبئة طويلة من جهة الوسيط العكسي بما أن واجهة Ghost الأمامية ساكنة أصلاً. بالنسبة لـ WordPress، لا تثبّت إلا إضافات مصانة وفعّل تخبئة صفحات (FastCGI/Varnish) في الأعلى: هذا ما يصنع الفرق بين مدوّنة سريعة وموقع يتباطأ تحت الحمل.