GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer Ghost sur Ubuntu 18.04

Ghost est une plate-forme de publication source moderne construite sur la plate-forme Node.js. Il est entièrement personnalisable et facile à utiliser, vous permettant de publier votre contenu avec une courbe d'apprentissage presque nulle.

Dans ce didacticiel, nous allons vous montrer comment déployer un blog Ghost sécurisé sur un serveur Ubuntu 18.04 en utilisant Nginx comme proxy, le certificat SSL Let's Encrypt gratuit, la dernière version LTS de Node.js et MySQL/MariaDB comme backend de base de données. .

Prérequis #

Comme prérequis pour suivre ce tutoriel, vous aurez besoin de :

  • Selon la configuration système officielle de Ghost, vous avez besoin d'au moins 1 G de RAM. Si vous avez un serveur avec moins de 1 Go de RAM, vous pouvez créer un fichier d'échange.
  • Un nom de domaine pointant vers l'adresse IP de votre serveur public. Dans ce tutoriel, nous utiliserons example.com .
  • Nginx installé en suivant Comment installer Nginx sur Ubuntu 18.04.
  • Pare-feu configuré en suivant Comment configurer un pare-feu avec UFW sur Ubuntu 18.04. Assurez-vous que les ports 80 et 443 sont ouverts.

Avant de poursuivre ce didacticiel, assurez-vous que vous êtes connecté en tant qu'utilisateur disposant des privilèges sudo.

Installer Node.js et Yarn #

Au moment de la rédaction de cet article, la version recommandée de Node.js pour Ghost est v8 carbon LTS. Nous allons installer Node.js à partir du référentiel NodeSource.

Activez le référentiel NodeSource pour Node.js v8 en utilisant le curl suivant commande :

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

Installez Node.js en tapant :

sudo apt install nodejs
Pour d'autres méthodes d'installation, consultez notre guide Comment installer Node.js sur Ubuntu 18.04.

Pour installer yarnfirst, activez le référentiel Yarn sur votre système avec les commandes suivantes :

curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

Une fois le référentiel activé, installez yarn avec :

sudo apt updatesudo apt-get -o Dpkg::Options::="--force-overwrite" install yarn

Installer MySQL #

Ghost prend en charge les bases de données MySQL, MariaDB et SQLite. Dans ce didacticiel, nous utiliserons MySQL, qui est la base de données recommandée lorsque vous exécutez Ghost en mode production.

Installez le package MySQL avec la commande suivante :

sudo apt install mysql-server

Exécutez le mysql_secure_installation commande pour améliorer la sécurité de l'installation de MySQL :

sudo mysql_secure_installation

Il vous sera demandé de configurer le VALIDATE PASSWORD PLUGIN qui est utilisé pour tester la force des mots de passe des utilisateurs MySQL. Il existe trois niveaux de politique de validation des mots de passe, faible, moyen et fort. Appuyez sur ENTER si vous ne souhaitez pas configurer le plug-in de validation de mot de passe.

À l'invite suivante, il vous sera demandé de définir un mot de passe pour l'utilisateur racine MySQL.

Une fois que vous avez défini le mot de passe root, le script vous demandera également de supprimer l'utilisateur anonyme, de restreindre l'accès de l'utilisateur root à la machine locale et de supprimer la base de données de test. Vous devez répondre Y (oui) à toutes les questions.

Ensuite, nous devons changer la méthode d'authentification de auth_socket à mysql_native_password , afin que le programme d'installation de Ghost puisse accéder à notre serveur MySQL. Pour ce faire, connectez-vous au serveur MySQL en tant qu'utilisateur root :

sudo mysql

et exécutez la requête suivante qui définira un mot de passe pour l'utilisateur root de MySQL lors de l'utilisation du mysql_native_password méthode :

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'very_strong_pasword';FLUSH PRIVILEGES;

Assurez-vous de changer very_strong_pasword avec un mot de passe fort.

Installation de Ghost-CLI #

Nous allons installer Ghost à l'aide de l'utilitaire Ghost CLI officiel. Cet utilitaire vous permet d'installer ou de mettre à jour Ghost en une seule commande.

Ghost CLI est disponible sous forme de package npm. La commande suivante installera Ghost CLI sur votre système Ubuntu globalement :

sudo yarn global add ghost-cli

Création de l'emplacement d'installation de Ghost #

Nous allons télécharger et installer Ghost dans le /var/www/ghost répertoire, qui est l'emplacement d'installation recommandé.

Pour créer le type de répertoire :

sudo mkdir -p /var/www/ghost

Changez la propriété du répertoire en votre utilisateur :

sudo chown $USER:$USER /var/www/ghost

$USER est une variable d'environnement qui contient votre nom d'utilisateur.

Définissez les autorisations de répertoire correctes :

sudo chmod 775 /var/www/ghost

Installation de Ghost #

Maintenant que Ghost CLI est installé et que toutes les conditions préalables sont remplies, nous pouvons commencer l'installation.

Passez au /var/www/ghost répertoire.

cd /var/www/ghost

Pour démarrer l'installation, exécutez ghost install , qui installera et configurera Ghost, configurera Nginx en tant que proxy inverse et sécurisera le site avec un certificat SSL Let's encrypt gratuit.

ghost install
✔ Checking system Node.js version
✔ Checking logged in user
✔ Checking current folder permissions
System checks failed with message: 'Linux version is not Ubuntu 16'
Some features of Ghost-CLI may not work without additional configuration.
For local installs we recommend using `ghost install local` instead.
? Continue anyway? (y/N) y

Le programme d'installation vérifiera votre système et imprimera quelques avertissements comme indiqué ci-dessus. Tapez y pour continuer et le programme d'installation téléchargera et installera ensuite Ghost :

ℹ Checking operating system compatibility [skipped]
✔ Checking for a MySQL installation
✔ Checking memory availability
✔ Checking for latest Ghost version
✔ Setting up install directory
✔ Downloading and installing Ghost v1.24.9
✔ Finishing install process

Ensuite, vous serez invité à définir l'URL de votre blog et vos informations MySQL. Fournissez le nom d'utilisateur et le mot de passe root que nous avons configurés dans le Installing MySQL et utilisez le nom de base de données par défaut ghost_prod .

? Enter your blog URL: https://example.com
? Enter your MySQL hostname: localhost
? Enter your MySQL username: root
? Enter your MySQL password: [hidden]
? Enter your Ghost database name: ghost_prod

Le programme d'installation créera un utilisateur système nommé ghost et vous demandera si vous souhaitez créer un utilisateur MySQL fantôme, tapez Yes .

✔ Configuring Ghost
✔ Setting up instance
Running sudo command: chown -R ghost:ghost /var/www/ghost/content
✔ Setting up "ghost" system user
? Do you wish to set up "ghost" mysql user? Yes
✔ Setting up "ghost" mysql user

Ensuite, le programme d'installation vous demandera si vous souhaitez configurer Nginx. Confirmez en tapant Yes .

? Do you wish to set up Nginx? Yes
✔ Creating nginx config file at /var/www/ghost/system/files/example.com.conf
Running sudo command: ln -sf /var/www/ghost/system/files/example.com.conf /etc/nginx/sites-available/example.com.conf
Running sudo command: ln -sf /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/example.com.conf
Running sudo command: nginx -s reload
✔ Setting up Nginx

Une fois Nginx configuré, le programme d'installation vous demandera si vous souhaitez configurer SSL. Confirmez en tapant Yes et l'assistant de configuration vous demandera d'entrer votre adresse e-mail, puis il générera un certificat SSL Let's Encrypt gratuit pour votre domaine et configurera Nginx.

? Do you wish to set up SSL? Yes
? Enter your email (used for Let's Encrypt notifications) [email protected]
Running sudo command: mkdir -p /etc/letsencrypt
Running sudo command: ./acme.sh --install --home /etc/letsencrypt
Running sudo command: /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt --domain example.com --webroot /var/www/ghost/system/nginx-root --reloadcmd "nginx -s reload" --accountemail [email protected]
Running sudo command: openssl dhparam -out /etc/nginx/snippets/dhparam.pem 2048
Running sudo command: mv /tmp/ssl-params.conf /etc/nginx/snippets/ssl-params.conf
✔ Creating ssl config file at /var/www/ghost/system/files/example.com-ssl.conf
Running sudo command: ln -sf /var/www/ghost/system/files/example.com-ssl.conf /etc/nginx/sites-available/example.com-ssl.conf
Running sudo command: ln -sf /etc/nginx/sites-available/example.com-ssl.conf /etc/nginx/sites-enabled/example.com-ssl.conf
Running sudo command: nginx -s reload
✔ Setting up SSL

Ensuite, le programme d'installation vous demandera si vous souhaitez configurer un service systemd. Tapez Y pour accepter et le programme d'installation créera un nouveau service systemd appelé ghost_example-com et lui permettra de démarrer au démarrage :

? Do you wish to set up Systemd? Yes
✔ Creating systemd service file at /var/www/ghost/system/files/ghost_example-com.service
Running sudo command: ln -sf /var/www/ghost/system/files/ghost_example-com.service /lib/systemd/system/ghost_example-com.service
Running sudo command: systemctl daemon-reload
✔ Setting up Systemd

Enfin, le programme d'installation configurera la base de données et vous demandera si vous souhaitez démarrer Ghost, tapez Yes .

Running sudo command: /var/www/ghost/current/node_modules/.bin/knex-migrator-migrate --init --mgpath /var/www/ghost/current
✔ Running database migrations
? Do you want to start Ghost? Yes
Running sudo command: systemctl is-active ghost_example-com
✔ Ensuring user is not logged in as ghost user
✔ Checking if logged in user is directory owner
✔ Checking current folder permissions
Running sudo command: systemctl is-active ghost_example-com
✔ Validating config
✔ Checking folder permissions
✔ Checking file permissions
✔ Checking content folder ownership
✔ Checking memory availability
Running sudo command: systemctl start ghost_example-com
✔ Starting Ghost
Running sudo command: systemctl is-enabled ghost_example-com
Running sudo command: systemctl enable ghost_example-com --quiet
✔ Starting Ghost
You can access your publication at https://example.com
Next, go to your admin interface at https://example.com/ghost/ to complete the setup of your publication

Ghost uses direct mail by default
To set up an alternative email method read our docs at https://docs.ghost.org/docs/mail-config

Terminer la configuration de Ghost #

Ouvrez votre navigateur, accédez à votre interface d'administration Ghost à https://example.com/ghost/ et l'écran suivant s'affichera :

Pour commencer, cliquez sur Create your account bouton.

Vous serez redirigé vers l'écran Créer votre compte, où vous devrez saisir le titre de votre blog, ainsi que le nom complet, l'adresse e-mail et le mot de passe de votre compte :

Une fois que vous avez rempli les détails et cliqué sur Invite your team bouton.

Sur cet écran, il vous sera demandé de saisir les adresses e-mail de vos collaborateurs. Vous pouvez simplement cliquer sur le I'll do this later, take me to my blog! lien et vous serez redirigé vers le tableau de bord Ghost :

À partir de là, vous pouvez créer de nouveaux messages, ajouter des utilisateurs et modifier la configuration de Ghosts.


Ubuntu
  1. Comment installer Odoo sur Ubuntu

  2. Comment installer Maven sur Ubuntu

  3. Comment installer Wine sur Ubuntu

  4. Comment installer R sur Ubuntu 16.04

  5. Comment installer Go sur Ubuntu 18.04

Comment installer qt sur Ubuntu 20.04

Comment installer Ghost CMS sur Ubuntu 20.04

Comment installer Ghost sur Ubuntu 16.04

Comment installer Ghost sur Ubuntu 20.04 LTS

Comment installer Go dans Ubuntu 20.04

Comment installer Go sur Ubuntu 22.04