GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer la plateforme de blogs Ghost sur Ubuntu Server 18.04/20.04

Ce tutoriel vous montrera comment installer la plateforme de blogs Ghost sur le serveur Ubuntu. Ghost est un logiciel de blog open source codé en Node.js, vous permettant de créer de beaux blogs modernes. Comparé à WordPress, Ghost est léger et beaucoup plus rapide car il est conçu spécifiquement pour les blogs et n'est pas un système de gestion de contenu complet comme WordPress.

Fonctionnalités fantômes

Au moment de la rédaction de cet article, la dernière version de Ghost est la v3.2.0, sortie le 23 décembre 2019. Les fonctionnalités de Ghost sont les suivantes :

  • Un éditeur basé sur Markdown vous permettant d'écrire rapidement des articles.
  • Gestion de contenu simple.
  • Édition collaborative avec votre équipe.
  • Publication planifiée
  • Analyses intégrées
  • Un bon référencement intégré directement, avec un balisage sémantique, des permaliens, des sitemaps XML, des balises canoniques et des métadonnées automatiques avec des remplacements manuels.
  • Compatibilité AMP (Accelerated Mobile Pages) intégrée
  • Flux RSS complets, formulaires de capture d'abonnement par e-mail et intégration du webhook Slack
  • Des centaines de superbes thèmes gratuits et premium sont disponibles sur le marché Ghost
  • Un joli thème Capser par défaut avec prise en charge du mode sombre.
  • Une application de bureau multiplateforme disponible pour Linux, Mac et Windows.
  • Le plugin WordPress officiel Ghost Migrator vous permet de migrer facilement de WordPress vers Ghost.

La fondation Ghost propose un hébergement géré, mais nous verrons ici comment créer un blog Ghost auto-hébergé sur le serveur Ubuntu.

Prérequis pour l'installation de Ghost sur le serveur Ubuntu

Pour exécuter un blog Ghost, vous avez besoin d'un serveur avec au moins 1 Go de RAM. Vous pouvez cliquer sur ce lien spécial pour obtenir un crédit gratuit de 50 $ sur DigitalOcean. (Pour les nouveaux utilisateurs uniquement). Si vous êtes déjà un utilisateur de DigitalOcean, vous pouvez cliquer sur ce lien spécial pour obtenir un crédit gratuit de 50 $ sur Vultr (pour les nouveaux utilisateurs uniquement). Une fois que vous avez un compte chez DigitalOcean ou Vultr, installez Ubuntu sur votre serveur et suivez les instructions ci-dessous. Pour une meilleure compatibilité, veuillez utiliser la version LTS d'Ubuntu comme Ubuntu 18.04 ou 16.04.

Vous devez également avoir un nom de domaine. J'ai enregistré mon nom de domaine auprès de NameCheap car le prix est bas et ils offrent une protection de la confidentialité whois gratuite à vie.

Remarque :J'ai installé Ghost avec un utilisateur sudo sur Ubuntu. Pour de meilleurs résultats, vous devez également suivre ce tutoriel avec un utilisateur sudo, pas root. Pour ajouter un utilisateur sudo, exécutez simplement

sudo adduser username
sudo adduser username sudo

Passez ensuite au nouvel utilisateur.

su - username

Étape 1 :Mettre à jour Ubuntu

Si votre serveur n'a pas été mis à jour depuis un certain temps, exécutez la commande suivante pour mettre à jour les packages logiciels existants.

sudo apt update;sudo apt upgrade

Étape 2 :Installez Node.js sur Ubuntu

Ghost vous oblige à installer la version LTS de Node.js et ne prend pas en charge la version non-LTS. La dernière version LTS de Node.js est v12.x, mais actuellement Ghost est plus compatible avec Node.js v10.x. Ajoutez le référentiel NodeSource à l'aide de la commande ci-dessous.

curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -

Installez ensuite Node.js.

sudo apt install nodejs

Vérifiez la version du nœud.

node -v

Exemple de sortie :

v10.18.1

Vérifier npm version :

npm -v

Exemple de sortie :

6.13.4

Étape 3 :Installer le serveur de base de données MariaDB

prend en charge MySQL et MariaDB. MariaDB est un remplacement direct de MySQL. Il est développé par d'anciens membres de l'équipe MySQL qui craignent qu'Oracle ne transforme MySQL en un produit à source fermée. Alors installons le serveur de base de données MariaDB.

Entrez la commande suivante pour l'installer sur Ubuntu 18.04/20.04.

sudo apt install mariadb-server mariadb-client

Une fois installé, le serveur MariaDB devrait être automatiquement démarré. Utilisez systemctl pour vérifier son état.

systemctl status mariadb

Exemple de sortie :

● mariadb.service - MariaDB 10.1.34 database server
   Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2018-09-08 11:13:27 UTC; 21s ago
     Docs: man:mysqld(8)
           https://mariadb.com/kb/en/library/systemd/
 Main PID: 3473 (mysqld)
   Status: "Taking your SQL requests now..."
    Tasks: 27 (limit: 505)
   CGroup: /system.slice/mariadb.service
           └─3473 /usr/sbin/mysqld

S'il ne fonctionne pas, démarrez-le avec cette commande :

sudo systemctl start mariadb

Pour permettre à MariaDB de démarrer automatiquement au démarrage du système, exécutez

sudo systemctl enable mariadb

Exécutez maintenant le script de sécurité post-installation.

sudo mysql_secure_installation

Lorsqu'il vous demande d'entrer le mot de passe root MariaDB, appuyez sur la touche Entrée car le mot de passe root n'est pas encore défini. Saisissez ensuite y pour définir le mot de passe root pour le serveur MariaDB.

Ensuite, vous pouvez appuyer sur Entrée pour répondre à toutes les questions restantes, ce qui supprimera l'utilisateur anonyme, désactivera la connexion root à distance et supprimera la base de données de test. Cette étape est une exigence de base pour la sécurité de la base de données MariaDB. (Notez que la lettre Y est en majuscule, ce qui signifie que c'est la réponse par défaut.)

Vérifiez les informations de version du serveur MariaDB.

mariadb --version

Sortie :

mariadb Ver 15.1 Distrib 10.1.34-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

Étape 4 :Créer une base de données et un utilisateur pour Ghost

Nous devons maintenant nous connecter à la console MariaDB et créer une base de données et un utilisateur pour Ghost . Par défaut, le package MaraiDB sur Ubuntu utilise unix_socket pour authentifier la connexion de l'utilisateur, ce qui signifie essentiellement que vous pouvez utiliser le nom d'utilisateur et le mot de passe du système d'exploitation pour vous connecter à la console MariaDB. Vous pouvez donc exécuter la commande suivante pour vous connecter sans fournir de mot de passe root MariaDB.

sudo mariadb -u root

Créez une base de données pour Ghost à l'aide de la commande suivante. Je l'ai nommé ghost , mais vous pouvez utiliser le nom de votre choix. (N'oubliez pas le point-virgule.)

create database ghost;

Entrez ensuite la commande ci-dessous pour créer un utilisateur de base de données pour Ghost et accorder tous les privilèges de la base de données fantôme à l'utilisateur.

grant all privileges on ghost.* to ghost@localhost identified by 'ghost_password';

Videz la table des privilèges pour que les modifications prennent effet, puis sortez de la console MariaDB.

flush privileges;

exit;

Étape 5 :Installer le serveur Web Nginx

Ghost utilisera le serveur Web Nginx, alors exécutez la commande suivante pour l'installer à partir du référentiel Ubuntu par défaut.

sudo apt install nginx

Si vous utilisez le pare-feu UFW, vous devez également ouvrir les ports 80 et 443.

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Étape 6 :Créez un enregistrement pour le nom de domaine de votre blog

Avant d'installer Ghost, il est recommandé de créer l'enregistrement DNS A pour le nom de domaine de votre blog. L'enregistrement A pointe votre nom de domaine vers l'adresse IP de votre serveur Ubuntu.

Étape 7 :Installer Ghost

Installez Ghost-CLI.

sudo npm install [email protected] -g

Créez ensuite un répertoire (/var/www/ghost/ ) pour Fantôme.

sudo mkdir -p /var/www/ghost/

Accordez des autorisations à votre compte d'utilisateur. Remplacer username avec votre vrai nom d'utilisateur.

sudo apt install acl

sudo setfacl -R -m u:username:rwx /var/www/ghost/

sudo chmod 775 /var/www/ghost

Changez maintenant le répertoire de travail en /var/www/ghost/ et installer Ghost.

cd /var/www/ghost/

ghost install

L'installation peut prendre un certain temps. Lors de l'installation, il vous sera demandé d'entrer l'URL de votre blog. Entrez quelque chose comme https://yourdomain.com . Et vous devrez entrer le nom de la base de données MariaDB, les informations d'identification de l'utilisateur que vous avez créées à l'étape 4.

? Enter your blog URL: https://yourdomain.com
? Enter your MySQL hostname: localhost
? Enter your MySQL username: ghost
? Enter your MySQL password: ghost_password
? Enter your Ghost database name: ghost

Si vous utilisez Ubuntu 20.04 et voyez le message suivant, vous pouvez l'ignorer et continuer l'installation.

System checks failed with message: 'Linux version is not Ubuntu 16 or 18'
Some features of Ghost-CLI may not work without additional configuration.
For local installs we recommend using `ghost install local` instead.

Un ghost l'utilisateur système sera automatiquement créé. Il est recommandé d'accepter de configurer Nginx et SSL, afin que votre blog soit disponible via le protocole sécurisé HTTPS. Acceptez également de configurer le service Systemd afin de pouvoir démarrer, arrêter ou redémarrer Ghost facilement.

Une fois Ghost installé avec succès, allez sur https://yourdomain.com/ghost pour terminer la configuration. Tout d'abord, vous devez créer un compte.

Ensuite, vous pouvez inviter certains utilisateurs du personnel sur votre blog Ghost, ou vous pouvez le faire plus tard.

Étape 8 :Modifier le fichier de configuration Nginx

Par défaut, le fichier de configuration Nginx pour Ghost contient un nom de domaine. Si vous souhaitez que Nginx serve à la fois le domaine www et le domaine non-www, modifiez le fichier de configuration.

sudo nano /etc/nginx/sites-enabled/yourdomain.com.conf

Trouvez la ligne suivante

server_name yourdomain.com;

Ajoutez le domaine www.

server_name yourdomain.com www.yourdomain.com;

Enregistrez et fermez le fichier. Supprimez ensuite le /etc/nginx/sites-enabled/yourdomain.com-ssl.conf fichier.

sudo rm /etc/nginx/sites-enabled/yourdomain.com-ssl.conf

Installez ensuite le client Certbot Let's Encrypt

sudo apt install certbot python3-certbot-nginx

Obtenez un certificat SSL pour le domaine www et le domaine non-www.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d yourdomain.com,www.yourdomain.com

Redémarrez Nginx et vous avez terminé.

sudo systemctl restart nginx

Étape 9 :Configurer la notification par e-mail

Afin d'envoyer des e-mails depuis votre blog Ghost (pour réinitialiser le mot de passe, inviter les utilisateurs du personnel, l'inscription des membres, etc.), vous devez configurer les paramètres SMTP. Si vous souhaitez utiliser votre propre serveur de messagerie, veuillez lire le didacticiel suivant pour configurer facilement votre propre serveur de messagerie.

  • Comment configurer facilement votre propre serveur de messagerie sur Ubuntu 18.04 avec iRedMail

Une fois que vous avez votre propre serveur de messagerie, modifiez le fichier de configuration de Ghost.

sudo nano /var/www/ghost/config.production.json

Par défaut, les paramètres de messagerie sont les suivants :

"mail": {
   "transport": "Direct"
},

Modifiez-le pour utiliser SMTP.

"mail": {
    "transport": "SMTP",
    "from": "[email protected]",
    "options": {
        "service": "yourdomain.com",
        "host": "mail.yourdomain.com",
        "port": 465,
        "secureConnection": true,
        "auth": {
            "user": "[email protected]",
            "pass": "the_email_account_password"
        }
    }
},

Notez que Ghost ne prend pas en charge le port 587 pour SMTP. Enregistrez et fermez le fichier. Redémarrez ensuite Ghost via le service systemd.

sudo systemctl restart ghost_yourdomain-com.service

Votre blog Ghost devrait maintenant pouvoir envoyer des e-mails.


Ubuntu
  1. Comment installer le serveur Web Nginx sur Ubuntu 18.04

  2. Comment installer le serveur RabbitMQ sur Ubuntu 18.04 et 16.04 LTS

  3. Comment installer le serveur Gitlab sur Ubuntu 18.04 et 16.04 LTS

  4. Comment installer MsSQL Server 2019 sur Ubuntu 20.04

  5. Comment installer Ansible sur Ubuntu Server 21.04

Comment installer AngularJS sur Ubuntu 22.04/20.04

Comment installer Webmin sur Ubuntu 20.04/22.04

Comment installer Webmin sur les serveurs Ubuntu 18.04 et Ubuntu 16.04

Comment installer CouchPotato sur Ubuntu Server/Desktop

Comment installer Ghost sur Ubuntu 20.04 LTS

Comment installer le serveur Minecraft sur Ubuntu 20.04