GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare la piattaforma di blogging Ghost su Ubuntu Server 18.04/20.04

Questo tutorial ti mostrerà come installare la piattaforma di blogging Ghost sul server Ubuntu. Ghost è un software di blogging open source codificato in Node.js, che ti consente di creare blog moderni e belli. Rispetto a WordPress, Ghost è leggero e molto più veloce perché è progettato specificamente per i blog e non è un sistema di gestione dei contenuti completo come WordPress.

Caratteristiche fantasma

Al momento in cui scrivo, l'ultima versione di Ghost è la v3.2.0, rilasciata il 23 dicembre 2019. Le caratteristiche di Ghost sono le seguenti:

  • Un editor basato su Markdown che ti consente di scrivere rapidamente post.
  • Gestione semplice dei contenuti.
  • Modifica collaborativa con il tuo team.
  • Pubblicazione programmata
  • Analisi integrata
  • Seo corretto integrato direttamente, con markup semantico, permalink, sitemap XML, tag canonici e metadati automatici con sostituzioni manuali.
  • Supporto integrato AMP (Accelerated Mobile Pages)
  • Feed RSS completi, moduli di acquisizione delle iscrizioni e-mail e integrazione di Slack webhook
  • Centinaia di bellissimi temi gratuiti e premium sono disponibili nel mercato di Ghost
  • Un accattivante tema predefinito Capser con supporto per la modalità oscura.
  • Un'app desktop multipiattaforma disponibile per Linux, Mac e Windows.
  • Il plug-in WordPress ufficiale di Ghost Migrator ti consente di migrare facilmente da WordPress a Ghost.

La fondazione Ghost offre hosting gestito, ma qui vedremo come creare un blog Ghost auto-ospitato sul server Ubuntu.

Prerequisiti per l'installazione di Ghost su Ubuntu Server

Per eseguire un blog Ghost, è necessario un server con almeno 1 GB di RAM. Puoi fare clic su questo link speciale per ottenere $ 50 di credito gratuito su DigitalOcean. (Solo per nuovi utenti). Se sei già un utente DigitalOcean, puoi fare clic su questo link speciale per ottenere $ 50 di credito gratuito su Vultr (solo per i nuovi utenti). Una volta che hai un account su DigitalOcean o Vultr, installa Ubuntu sul tuo server e segui le istruzioni seguenti. Per una migliore compatibilità, usa la versione LTS di Ubuntu come Ubuntu 18.04 o 16.04.

Devi anche avere un nome di dominio. Ho registrato il mio nome di dominio da NameCheap perché il prezzo è basso e offrono protezione della privacy di Whois gratuita per tutta la vita.

Nota :Ho installato Ghost con un utente sudo su Ubuntu. Per ottenere i migliori risultati, dovresti anche seguire questo tutorial con un utente sudo, non root. Per aggiungere un utente sudo, esegui semplicemente

sudo adduser username
sudo adduser username sudo

Quindi passa al nuovo utente.

su - username

Passaggio 1:aggiorna Ubuntu

Se il tuo server non viene aggiornato da un po' di tempo, esegui il comando seguente per aggiornare i pacchetti software esistenti.

sudo apt update;sudo apt upgrade

Passaggio 2:installa Node.js su Ubuntu

Ghost richiede l'installazione della versione LTS di Node.js e non supporta la versione non LTS. L'ultima versione LTS di Node.js è v12.x, ma attualmente Ghost è più compatibile con Node.js v10.x. Aggiungi il repository NodeSource usando il comando seguente.

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

Quindi installa Node.js.

sudo apt install nodejs

Controlla la versione del nodo.

node -v

Esempio di output:

v10.18.1

Controlla npm versione:

npm -v

Esempio di output:

6.13.4

Fase 3:installa il server di database MariaDB

supporta MySQL e MariaDB. MariaDB è un sostituto drop-in di MySQL. È stato sviluppato da ex membri del team MySQL preoccupati che Oracle possa trasformare MySQL in un prodotto closed-source. Quindi installiamo il server del database MariaDB.

Immettere il seguente comando per installarlo su Ubuntu 18.04/20.04.

sudo apt install mariadb-server mariadb-client

Dopo l'installazione, il server MariaDB dovrebbe essere avviato automaticamente. Usa systemctl per verificarne lo stato.

systemctl status mariadb

Esempio di output:

● 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

Se non è in esecuzione, avvialo con questo comando:

sudo systemctl start mariadb

Per consentire a MariaDB di avviarsi automaticamente all'avvio del sistema, esegui

sudo systemctl enable mariadb

Ora esegui lo script di sicurezza post installazione.

sudo mysql_secure_installation

Quando ti chiede di inserire la password di root di MariaDB, premi il tasto Invio poiché la password di root non è ancora impostata. Quindi inserisci y per impostare la password di root per il server MariaDB.

Successivamente, puoi premere Invio per rispondere a tutte le domande rimanenti, che rimuoveranno l'utente anonimo, disabiliteranno l'accesso root remoto e rimuoveranno il database di test. Questo passaggio è un requisito di base per la sicurezza del database MariaDB. (Nota che la lettera Y è in maiuscolo, il che significa che è la risposta predefinita.)

Controlla le informazioni sulla versione del server MariaDB.

mariadb --version

Uscita:

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

Fase 4:crea un database e un utente per Ghost

Ora dobbiamo accedere alla console MariaDB e creare un database e un utente per Ghost. Per impostazione predefinita, il pacchetto MaraiDB su Ubuntu utilizza unix_socket per autenticare l'accesso dell'utente, il che significa sostanzialmente che puoi utilizzare il nome utente e la password del sistema operativo per accedere alla console MariaDB. Quindi puoi eseguire il seguente comando per accedere senza fornire la password di root di MariaDB.

sudo mariadb -u root

Crea un database per Ghost usando il comando seguente. L'ho chiamato ghost , ma puoi usare il nome che preferisci. (Non tralasciare il punto e virgola.)

create database ghost;

Quindi inserisci il comando seguente per creare un utente del database per Ghost e concedere tutti i privilegi del database fantasma all'utente.

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

Svuota la tabella dei privilegi per rendere effettive le modifiche, quindi esci dalla console di MariaDB.

flush privileges;

exit;

Fase 5:installa Nginx Web Server

Ghost utilizzerà il server web Nginx, quindi esegui il seguente comando per installarlo dal repository Ubuntu predefinito.

sudo apt install nginx

Se stai utilizzando il firewall UFW, devi anche aprire le porte 80 e 443.

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

Passaggio 6:crea un record per il nome di dominio del tuo blog

Prima di installare Ghost, ti consigliamo di creare il record DNS A per il nome di dominio del tuo blog. Il record A punta il tuo nome di dominio all'indirizzo IP del tuo server Ubuntu.

Passaggio 7:installa Ghost

Installa Ghost-CLI.

sudo npm install [email protected] -g

Quindi crea una directory (/var/www/ghost/ ) per Ghost.

sudo mkdir -p /var/www/ghost/

Concedi le autorizzazioni al tuo account utente. Sostituisci username con il tuo vero nome utente.

sudo apt install acl

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

sudo chmod 775 /var/www/ghost

Ora cambia la directory di lavoro in /var/www/ghost/ e installa Ghost.

cd /var/www/ghost/

ghost install

L'installazione potrebbe richiedere del tempo. Durante l'installazione ti verrà chiesto di inserire l'URL del tuo blog. Inserisci qualcosa come https://yourdomain.com . E dovrai inserire il nome del database MariaDB, le credenziali utente che hai creato nel passaggio 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

Se stai usando Ubuntu 20.04 e vedi il seguente messaggio, puoi ignorarlo e continuare l'installazione.

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'utente di sistema verrà creato automaticamente. Ti consigliamo di accettare di configurare Nginx e SSL, così il tuo blog sarà disponibile tramite il protocollo HTTPS sicuro. Inoltre, accetta di configurare il servizio Systemd in modo da poter avviare, arrestare o riavviare Ghost facilmente.

Una volta che Ghost è stato installato correttamente, vai su https://yourdomain.com/ghost per completare la configurazione. Innanzitutto, devi creare un account.

Quindi puoi invitare alcuni utenti dello staff sul tuo blog Ghost, oppure puoi farlo in un secondo momento.

Fase 8:modifica il file di configurazione di Nginx

Per impostazione predefinita, il file di configurazione di Nginx per Ghost contiene un nome di dominio. Se desideri che Nginx serva sia il dominio www che il dominio non www, modifica il file di configurazione.

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

Trova la riga seguente

server_name yourdomain.com;

Aggiungi il dominio www.

server_name yourdomain.com www.yourdomain.com;

Salva e chiudi il file. Quindi elimina il /etc/nginx/sites-enabled/yourdomain.com-ssl.conf file.

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

Quindi installa il client Certbot Let's Encrypt

sudo apt install certbot python3-certbot-nginx

Ottieni il certificato SSL sia per il dominio www che per il dominio non www.

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

Riavvia Nginx e il gioco è fatto.

sudo systemctl restart nginx

Passaggio 9:imposta la notifica e-mail

Per inviare e-mail dal tuo blog Ghost (per reimpostare la password, invitare utenti dello staff, iscriversi membri, ecc.), devi configurare le impostazioni SMTP. Se desideri utilizzare il tuo server di posta elettronica, leggi il seguente tutorial per configurare facilmente il tuo server di posta elettronica.

  • Come configurare facilmente il tuo server di posta elettronica su Ubuntu 18.04 con iRedMail

Una volta che hai il tuo server di posta elettronica, modifica il file di configurazione di Ghost.

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

Per impostazione predefinita, le impostazioni della posta sono le seguenti:

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

Modificalo per utilizzare 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"
        }
    }
},

Nota che Ghost non supporta la porta 587 per SMTP. Salva e chiudi il file. Quindi riavvia Ghost tramite il servizio systemd.

sudo systemctl restart ghost_yourdomain-com.service

Ora il tuo blog Ghost dovrebbe essere in grado di inviare e-mail.


Ubuntu
  1. Come installare Nginx Web Server su Ubuntu 18.04

  2. Come installare RabbitMQ Server su Ubuntu 18.04 e 16.04 LTS

  3. Come installare Gitlab Server su Ubuntu 18.04 e 16.04 LTS

  4. Come installare MsSQL Server 2019 su Ubuntu 20.04

  5. Come installare Ansible su Ubuntu Server 21.04

Come installare AngularJS su Ubuntu 22.04/20.04

Come installare Webmin su Ubuntu 20.04/22.04

Come installare Webmin su Ubuntu 18.04 e Ubuntu 16.04 Server

Come installare CouchPotato su Ubuntu Server/Desktop

Come installare Ghost su Ubuntu 20.04 LTS

Come installare il server Minecraft su Ubuntu 20.04