[{"data":1,"prerenderedAt":169},["ShallowReactive",2],{"seo-verification":3,"blog-ghost-vs-wordpress-which-self-hosted-blog-platform-en":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"id":7,"slug":8,"slugs":9,"title":12,"excerpt":13,"readTime":14,"views":15,"isPinned":16,"publishedAt":17,"category":18,"categories":23,"featuredImage":25,"bgImage":26,"posterImage":27,"relatedSolution":28,"intro":31,"sections":32,"ctaTitle":114,"ctaBody":115,"ctaButton":116,"ctaUrl":117,"relatedPosts":118},96,"ghost-vs-wordpress-which-self-hosted-blog-platform",{"fr":10,"en":8,"ar":11},"ghost-vs-wordpress","ghost-مقابل-wordpress-أي-منصة-تدوين-مستضافة-ذاتيا","Ghost vs WordPress: which self-hosted blog platform?","Ghost or WordPress for your self-hosted blog on a VPS? Comparison of performance, SEO, Docker prerequisites and complete deployment guide.",3,0,false,"2026-03-16T00:00:00+00:00",{"id":19,"name":20,"slug":21,"color":22,"icon":21},5,"Comparison","comparatif","bg-info\u002F10 text-info",[24],{"id":19,"name":20,"slug":21,"color":22,"icon":21},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fghost-vs-wordpress-poster.svg",{"categorySlug":29,"appSlug":30},"self-hosting","ghost","Ghost and WordPress dominate the self-hosted blog, but meet two distinct needs. WordPress is the universal, infinitely extensible CMS; Ghost is a modern platform tailored for publishing, newsletters and paid subscription. Here's how to choose and deploy your editorial platform on a VPS.",[33,37,47,86,89,111],{"type":34,"title":35,"body":36},"h2","Why self-host your blog platform","Publishing on a closed platform deprives you of control over your audience, your data and your SEO. By self-hosting Ghost or WordPress on a VPS, you own your content, your URLs, your audience data and your subscriber list. WordPress, written in PHP, offers an ecosystem of tens of thousands of themes and plugins: it's the Swiss army knife that becomes e-commerce, portfolio or showcase site. Ghost, written in Node.js, is focused: a streamlined editor, native performance, built-in membership and newsletters without a plugin, and a fast front-end by design. If you're building a feature-rich site, WordPress is the obvious choice; if you want to publish fast and monetize through subscription, Ghost shines.",{"type":38,"title":39,"items":40},"ul","The benefits of self-hosting",[41,42,43,44,45,46],"Full ownership of the content, URLs and audience data, with no dependence on a platform.","No per-subscriber fee or commission on revenue (unlike hosted offerings).","Freedom of themes, plugins (WordPress) or customization of the Handlebars theme (Ghost).","Control of technical SEO: URLs, sitemaps, metadata and loading performance.","Newsletters and membership built in (Ghost) or via extensions (WordPress), with no intermediary.","Backups and migrations under your control, with no proprietary lock-in.",{"type":48,"headers":49,"rows":53},"comparison",[50,51,52],"Criterion","Ghost","WordPress",[54,58,62,66,70,74,78,82],[55,56,57],"Technology","Node.js","PHP",[59,60,61],"Database","MySQL 8","MySQL \u002F MariaDB",[63,64,65],"Ecosystem","Handlebars themes, API integrations","Tens of thousands of plugins and themes",[67,68,69],"Newsletters \u002F membership","Native, no plugin","Via third-party extensions",[71,72,73],"Default performance","Very fast (lightweight front-end)","Variable, depends on plugins\u002Fcache",[75,76,77],"Versatility","Focused on publishing and subscription","Universal (blog, e-commerce, showcase)",[79,80,81],"Recommended RAM","1 to 2 GB","1 to 2 GB (more depending on plugins)",[83,84,85],"Target profile","Creators and monetized media","Any extensible web project",{"type":34,"title":87,"body":88},"Prerequisites for each platform","Ghost strictly requires MySQL 8 (not MariaDB in production) and Node.js, provided in its official Docker image. A VPS of 1 vCPU and 2 GB of RAM handles a comfortable blog. WordPress runs on 1 vCPU and 1 GB for a light site, but climbs quickly with plugins and an object cache: plan for 2 GB and Redis as soon as traffic rises. In both cases, an NVMe disk significantly speeds up rendering. You need Docker Compose v2, a dedicated domain (`blog.mydomain.com`), an HTTPS reverse proxy, and for WordPress attention to `upload_max_filesize` if you publish a lot of media.",{"type":90,"title":91,"steps":92},"steps","Deploy Ghost (or WordPress) on a VPS",[93,96,99,102,105,108],{"title":94,"body":95},"Declare the database","For Ghost, a `mysql:8` service with a persistent volume and dedicated credentials. For WordPress, `mariadb:11` or `mysql:8` works. Isolate them on an internal Docker network, not publicly exposed.",{"title":97,"body":98},"Configure the application container","For Ghost, the `ghost:5-alpine` image with `url=https:\u002F\u002Fblog.mydomain.com`, `database__client=mysql` and the connection parameters. For WordPress, the `wordpress:php8.3-apache` image with `WORDPRESS_DB_HOST` and the credentials.",{"title":100,"body":101},"Mount the content volumes","Mount `\u002Fvar\u002Flib\u002Fghost\u002Fcontent` (Ghost) or `\u002Fvar\u002Fwww\u002Fhtml\u002Fwp-content` (WordPress) on a dedicated volume, to preserve themes, images and uploads during image updates.",{"title":103,"body":104},"Launch and initialize","Run `docker compose up -d`. Ghost listens on `2368`, WordPress on `80`. Go to `\u002Fghost` to create the Ghost admin account, or follow the WordPress installation wizard.",{"title":106,"body":107},"Reverse proxy and HTTPS","Route `blog.mydomain.com` via Caddy\u002FTraefik with an automatic Let's Encrypt certificate. Check that the configured URL is indeed in `https` on the application side, otherwise the resources and redirects will be in the clear.",{"title":109,"body":110},"Configure email sending and caching","Connect an SMTP service (transactional) for Ghost newsletters or WordPress emails. Enable an HTTP cache on the proxy side and, for WordPress, a Redis object cache to absorb the traffic.",{"type":112,"body":113},"tip","With Ghost, be sure to configure transactional `mail` from installation: without a functional SMTP, the sending of newsletters and members' magic-link login emails fails silently, and you only discover it on the first send. Also serve images via a long cache on the reverse proxy side since the Ghost front-end is already static. For WordPress, install only maintained plugins and enable a page cache (FastCGI\u002FVarnish) upstream: that's what makes the difference between a fast blog and a site that crawls under load.","Publish on your own platform","Deploy Ghost or WordPress on a ServOrbit Cloud VPS with Docker, a ready database and NVMe SSD for a fast front-end. The preconfigured template gets you online without friction.","Launch my blog on a VPS","\u002Fvps-cloud",[119,136,152],{"id":120,"slug":121,"slugs":122,"title":125,"excerpt":126,"readTime":127,"views":15,"isPinned":16,"publishedAt":128,"category":129,"categories":130,"featuredImage":25,"bgImage":26,"posterImage":132,"relatedSolution":133},4,"coolify-vs-dokploy-which-tool-to-deploy-on-a-vps",{"fr":123,"en":121,"ar":124},"coolify-vs-dokploy","coolify-مقابل-dokploy-أي-أداة-للنشر-على-vps","Coolify vs Dokploy: which tool to deploy on a VPS?","A complete Coolify vs Dokploy comparison: features, simplicity, use cases. Which tool should you choose to host and deploy your applications on a VPS?",2,"2026-06-07T00:00:00+00:00",{"id":19,"name":20,"slug":21,"color":22,"icon":21},[131],{"id":19,"name":20,"slug":21,"color":22,"icon":21},"\u002Fblog\u002Fcovers\u002Fcoolify-vs-dokploy-poster.svg",{"categorySlug":134,"appSlug":135},"application-deployment-devops","coolify",{"id":137,"slug":138,"slugs":139,"title":142,"excerpt":143,"readTime":14,"views":15,"isPinned":16,"publishedAt":144,"category":145,"categories":146,"featuredImage":25,"bgImage":26,"posterImage":148,"relatedSolution":149},93,"n8n-vs-node-red-which-self-hosted-automation-tool-to-choose",{"fr":140,"en":138,"ar":141},"n8n-vs-node-red","n8n-مقابل-node-red-أي-أداة-أتمتة-مستضافة-ذاتيا-تختار","n8n vs Node-RED: which self-hosted automation tool to choose?","n8n or Node-RED to automate your workflows on a VPS? Technical comparison, Docker prerequisites and self-hosted deployment guide.","2026-03-19T00:00:00+00:00",{"id":19,"name":20,"slug":21,"color":22,"icon":21},[147],{"id":19,"name":20,"slug":21,"color":22,"icon":21},"\u002Fblog\u002Fcovers\u002Fn8n-vs-node-red-poster.svg",{"categorySlug":150,"appSlug":151},"automation-workflows","n8n",{"id":153,"slug":154,"slugs":155,"title":158,"excerpt":159,"readTime":160,"views":15,"isPinned":16,"publishedAt":161,"category":162,"categories":163,"featuredImage":25,"bgImage":26,"posterImage":165,"relatedSolution":166},94,"supabase-vs-appwrite-which-self-hosted-backend-for-your-vps",{"fr":156,"en":154,"ar":157},"supabase-vs-appwrite","supabase-مقابل-appwrite-أي-خلفية-مستضافة-ذاتيا-لـ-vps","Supabase vs Appwrite: Choosing Your Open-Source BaaS on a VPS","Full comparison of Supabase vs Appwrite: Docker deployment, RAM requirements, auth, serverless functions, realtime, and a decision guide for your VPS.",10,"2026-03-18T00:00:00+00:00",{"id":19,"name":20,"slug":21,"color":22,"icon":21},[164],{"id":19,"name":20,"slug":21,"color":22,"icon":21},"\u002Fblog\u002Fcovers\u002Fsupabase-vs-appwrite-poster.svg",{"categorySlug":167,"appSlug":168},"databases","supabase",1787580997696]