Comment déployer Ghost sur Fedora 25

Ghost est une plate-forme de blogs open source qui gagne en popularité auprès des développeurs et des utilisateurs ordinaires depuis sa sortie en 2013. Il met l'accent sur le contenu et les blogs . La chose la plus intéressante à propos de Ghost est sa conception simple, propre et réactive. Vous pouvez écrire vos articles de blog à partir d'un téléphone mobile. Le contenu de Ghost est écrit en utilisant le langage Markdown. Ghost est parfait pour les individus ou les petits groupes d'écrivains.

Dans ce guide, nous allons configurer et déployer un blog Ghost sécurisé sur un Fedora 25 VPS à l' aide de Let's Encrypt , Certbot , Node.js , Nginx et PM2 .

Exigences

  • Instance de serveur Fedora 25 avec au moins 1 Go de RAM .
  • Vous devrez probablement ouvrir le port 2368 avec semanage port -a -t http_port_t -p tcp 2368.

Encryptons

Avant de commencer cette étape, assurez-vous d'avoir défini des enregistrements DNS pour votre domaine.

Nous allons utiliser Let's Encrypt CA et le client Certbot d'EFF pour obtenir le certificat TLS pour notre blog Ghost. N'oubliez pas de remplacer toutes les instances de example.compar votre nom de domaine.

  1. Système de mise à jour:

    dnf check-update || dnf upgrade -y
    
  2. Installez les outils nécessaires:

    dnf install @development-tools -y
    
  3. Installez Certbot (alias Let's Encrypt client):

    dnf install certbot -y
    
  4. Vérifiez la version de Certbot:

    certbot --version
    # certbot 0.12.0
    
  5. Obtenez un certificat en utilisant le mode autonome:

    certbot certonly --standalone --domains example.com,www.example.com --email john.doe@example.com --agree-tos --rsa-key-size 2048
    

Après avoir suivi les étapes précédentes, votre certificat et votre clé privée seront dans le /etc/letsencrypt/live/example.comrépertoire.

Installer NodeJS

Ghost prend actuellement en charge les versions Node 0.12.x , 4.2+ et 6.9+ uniquement.

Nous allons installer la version prise en charge pour Ghost qui est v6 Boron LTSau moment de la rédaction de cet article.

  1. Téléchargez et installez la dernière version LTS de Node.js:

    dnf install nodejs -y
    
  2. Vérifiez la version du nœud et du NPM:

    node -v && npm -v
    # v6.10.2
    # 3.10.10
    

Installer Nginx

  1. Téléchargez et installez Nginx:

    dnf install nginx -y
    
  2. Vérifiez la version de Nginx:

    nginx -v
    # nginx version: nginx/1.10.2
    
  3. Démarrez et activez le service Nginx:

    systemctl start nginx.service && systemctl enable nginx.service
    
  4. Configurez Nginx comme proxy inverse:

    vi /etc/nginx/conf.d/ghost.conf
    
  5. Collez ce qui suit dans /etc/nginx/conf.d/ghost.conf:

    server {
    
      listen 80;
      listen [::]:80;
      listen 443 ssl http2;
      listen [::]:443 ssl http2;
    
      server_name example.com www.example.com;
    
      ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
      ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
      ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    
      location / {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_pass http://127.0.0.1:2368;
      }
    
    }
    
  6. Vérifiez la syntaxe Nginx:

    nginx -t
    
  7. Recharger la configuration Nginx:

    systemctl reload nginx.service
    

Installer Ghost

Si vous souhaitez héberger plusieurs blogs Ghost sur le même VPS , chaque instance Ghost doit être exécutée sur un port distinct.

  1. Créer un webrootrépertoire:

    mkdir -p /var/www/
    
  2. Créez un nouvel utilisateur fantôme:

    useradd -c "Ghost Application" ghost 
    
  3. Télécharger Ghost:

    curl -L https://github.com/TryGhost/Ghost/releases/download/0.11.8/Ghost-0.11.8.zip -o ghost.zip
    
  4. Décompressez Ghost:

    unzip -uo ghost.zip -d /var/www/ghost
    rm -f ghost.zip
    
  5. Accédez à webroot:

    cd /var/www/ghost
    
  6. Changez la propriété du répertoire webroot:

    chown -R ghost:ghost .
    
  7. Passez au nouvel utilisateur fantôme:

    su - ghost
    
  8. Accédez à webroot:

    cd /var/www/ghost
    
  9. Installez Ghost:

    npm install --production
    
  10. Configurez Ghost en modifiant urlet en modifiant la mailpropriété de l' productionobjet à l'intérieur du config.jsfichier:

    cp config.example.js config.js
    vi config.js
    
    
    var path = require('path'),
           config;
    
    config = {
      // ### Production
      // When running Ghost in the wild, use the production environment.
      // Configure your URL and mail settings here
      production: {
        url: 'https://example.com',
        mail: {
          options: {
             service: '',
                auth: {
                  user: '',
                  pass: ''
                }
              }
        },
            . . .
            . . .
        },
    }
    . . .
    . . .        
    

    REMARQUE : vous devez mailégalement configurer . Consultez la documentation officielle de Ghost pour savoir comment procéder.

  11. Démarrez Ghost:

    npm start --production
    

    Ghost va maintenant fonctionner. L'interface frontale et d'administration du blog sont sécurisées avec HTTPS et HTTP / 2 fonctionne également. Vous pouvez ouvrir votre navigateur et visiter le site à https://example.com. N'oubliez pas de remplacer example.compar votre nom de domaine.

  12. Arrêtez le processus Ghost en appuyant sur CTRL+ Cet quittez l'utilisateur fantôme pour revenir à l'utilisateur root:

    exit
    

Installer PM2

Si vous fermez votre session de terminal avec votre VPS , votre blog descendra également. Ce n'est pas bon. Pour éviter cela, nous allons utiliser le gestionnaire de processus PM2 . Cela gardera notre blog ouvert 24h / 24 et 7j / 7.

  1. Installez la dernière version stable du gestionnaire de processus PM2:

    npm install -g pm2@latest
    
  2. Vérifiez la version PM2:

    pm2 -v
    # 2.4.6
    
  3. Passez à nouveau à l'utilisateur fantôme:

    su - ghost
    
  4. Définissez NODE_ENVla variable d'environnement sur production:

    echo "export NODE_ENV=production" >> ~/.bashrc && source ~/.bashrc
    
  5. Démarrez (démonifiez) l'application Ghost avec PM2:

    pm2 start /var/www/ghost/index.js --name "Ghost Blog"
    
  6. Accédez à https://example.com/ghost/et créez l'utilisateur administrateur Ghost. Faîtes-le aussitôt que possible.

Conclusion

C'est tout. Nous avons maintenant un blog Ghost entièrement fonctionnel. Si vous souhaitez changer le thème Ghost par défaut appelé Casper en un thème personnalisé, vous pouvez simplement télécharger et décompresser le thème dans le /var/www/ghost/content/themesdossier et le sélectionner via l'interface d'administration Ghost, située à https://example.com/ghost.

Laisser un commentaire

Comment générer des clés SSH?

Comment générer des clés SSH?

Découvrez comment générer une clé SSH pour accéder à votre serveur sans mot de passe. Suivez nos étapes faciles à comprendre pour créer et ajouter des clés SSH.

Créer un serveur de messagerie avec hMailServer sous Windows

Créer un serveur de messagerie avec hMailServer sous Windows

Découvrez comment créer un serveur de messagerie avec hMailServer sous Windows pour recevoir des e-mails facilement.

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

Les attaques de ransomware sont en augmentation, mais l'IA peut-elle aider à lutter contre le dernier virus informatique ? L'IA est-elle la réponse ? Lisez ici, sachez que l'IA est un boone ou un fléau

ReactOS : est-ce lavenir de Windows ?

ReactOS : est-ce lavenir de Windows ?

ReactOS, un système d'exploitation open source et gratuit est ici avec la dernière version. Cela peut-il suffire aux besoins des utilisateurs de Windows modernes et faire tomber Microsoft ? Découvrons-en plus sur cet ancien style, mais une expérience de système d'exploitation plus récente.

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Whatsapp a finalement lancé l'application de bureau pour les utilisateurs Mac et Windows. Vous pouvez désormais accéder facilement à Whatsapp depuis Windows ou Mac. Disponible pour Windows 8+ et Mac OS 10.9+

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Lisez ceci pour savoir comment l'intelligence artificielle devient populaire parmi les petites entreprises et comment elle augmente les probabilités de les faire grandir et de donner à leurs concurrents un avantage.

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

Récemment, Apple a publié macOS Catalina 10.15.4, une mise à jour supplémentaire pour résoudre les problèmes, mais il semble que la mise à jour cause davantage de problèmes, ce qui entraîne le bridage des machines mac. Lisez cet article pour en savoir plus

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux d'extraction de données de Big Data

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Notre ordinateur stocke toutes les données d'une manière organisée connue sous le nom de système de fichiers de journalisation. C'est une méthode efficace qui permet à l'ordinateur de rechercher et d'afficher des fichiers dès que vous appuyez sur la recherche.https://wethegeek.com/?p=94116&preview=true

Singularité technologique : un futur lointain de la civilisation humaine ?

Singularité technologique : un futur lointain de la civilisation humaine ?

Alors que la science évolue à un rythme rapide, prenant le pas sur une grande partie de nos efforts, les risques de nous soumettre à une Singularité inexplicable augmentent également. Lisez, ce que la singularité pourrait signifier pour nous.