Pourquoi auto-héberger sa plateforme de blog
Publier sur une plateforme fermée vous prive du contrôle de votre audience, de vos données et de votre SEO. En auto-hébergeant Ghost ou WordPress sur un VPS, vous possédez votre contenu, vos URLs, vos données d'audience et votre liste d'abonnés. WordPress, écrit en PHP, offre un écosystème de dizaines de milliers de thèmes et plugins : c'est le couteau suisse qui devient e-commerce, portfolio ou site vitrine. Ghost, écrit en Node.js, est focalisé : éditeur épuré, performances natives, membership et newsletters intégrés sans plugin, et un front-end rapide par conception. Si vous construisez un site riche en fonctionnalités, WordPress s'impose ; si vous voulez publier vite et monétiser par l'abonnement, Ghost brille.
Les bénéfices de l'auto-hébergement
- Propriété totale du contenu, des URLs et des données d'audience, sans dépendance à une plateforme.
- Aucun frais par abonné ni commission sur les revenus (contrairement aux offres hébergées).
- Liberté de thèmes, plugins (WordPress) ou de personnalisation du thème Handlebars (Ghost).
- Maîtrise du SEO technique : URLs, sitemaps, métadonnées et performances de chargement.
- Newsletters et membership intégrés (Ghost) ou via extensions (WordPress), sans intermédiaire.
- Sauvegardes et migrations sous votre contrôle, sans lock-in propriétaire.
| Critère | Ghost | WordPress |
|---|---|---|
| Technologie | Node.js | PHP |
| Base de données | MySQL 8 | MySQL / MariaDB |
| Écosystème | Thèmes Handlebars, intégrations API | Dizaines de milliers de plugins et thèmes |
| Newsletters / membership | Natifs, sans plugin | Via extensions tierces |
| Performances par défaut | Très rapides (front léger) | Variables, dépendent des plugins/cache |
| Polyvalence | Centré publication et abonnement | Universel (blog, e-commerce, vitrine) |
| RAM conseillée | 1 à 2 Go | 1 à 2 Go (plus selon plugins) |
| Profil cible | Créateurs et médias monétisés | Tout projet web extensible |
Prérequis pour chaque plateforme
Ghost requiert obligatoirement MySQL 8 (pas MariaDB en production) et Node.js, fournis dans son image Docker officielle. Un VPS de 1 vCPU et 2 Go de RAM gère un blog confortable. WordPress tourne sur 1 vCPU et 1 Go pour un site léger, mais grimpe vite avec les plugins et un cache d'objets : prévoyez 2 Go et Redis dès que le trafic monte. Dans les deux cas, un disque NVMe accélère nettement le rendu. Il vous faut Docker Compose v2, un domaine dédié (blog.mondomaine.ma), un reverse proxy HTTPS, et pour WordPress une attention à upload_max_filesize si vous publiez beaucoup de médias.
Déployer Ghost (ou WordPress) sur VPS
Déclarer la base de données
Pour Ghost, un service mysql:8 avec un volume persistant et des identifiants dédiés. Pour WordPress, mariadb:11 ou mysql:8 convient. Isolez-les sur un réseau Docker interne, non exposé publiquement.
Configurer le conteneur applicatif
Pour Ghost, l'image ghost:5-alpine avec url=https://blog.mondomaine.ma, database__client=mysql et les paramètres de connexion. Pour WordPress, l'image wordpress:php8.3-apache avec WORDPRESS_DB_HOST et les identifiants.
Monter les volumes de contenu
Montez /var/lib/ghost/content (Ghost) ou /var/www/html/wp-content (WordPress) sur un volume dédié, pour préserver thèmes, images et uploads lors des mises à jour d'image.
Lancer et initialiser
Exécutez docker compose up -d. Ghost écoute sur 2368, WordPress sur 80. Accédez à /ghost pour créer le compte admin Ghost, ou suivez l'assistant d'installation WordPress.
Reverse proxy et HTTPS
Routez blog.mondomaine.ma via Caddy/Traefik avec un certificat Let's Encrypt automatique. Vérifiez que l'URL configurée est bien en https côté application, sinon les ressources et redirections seront en clair.
Configurer l'envoi d'e-mails et le cache
Branchez un service SMTP (transactionnel) pour les newsletters Ghost ou les e-mails WordPress. Activez un cache HTTP côté proxy et, pour WordPress, un cache d'objets Redis pour absorber le trafic.
Avec Ghost, configurez impérativement le mail transactionnel dès l'installation : sans SMTP fonctionnel, l'envoi des newsletters et des liens magic-link de connexion des membres échoue silencieusement, et vous ne le découvrez qu'au premier envoi. Servez aussi les images via un cache long côté reverse proxy puisque le front Ghost est déjà statique. Pour WordPress, n'installez que des plugins maintenus et activez un cache de pages (FastCGI/Varnish) en amont : c'est ce qui fait la différence entre un blog rapide et un site qui rame sous charge.