Cum să implementați Ghost pe Ubuntu 16.04

Ghost este o platformă de bloguri open source care câștigă popularitate în rândul dezvoltatorilor și utilizatorilor obișnuiți din lansarea din 2013. Pune accent pe conținut și pe bloguri . Cel mai atractiv lucru despre Ghost este designul său simplu, curat și sensibil. Vă puteți scrie postările de pe blog de pe un telefon mobil. Conținutul pentru Ghost este scris folosind limbajul Markdown.

În acest ghid vom configura și disloca un blog Ghost sigur pe un VPS Ubuntu 16.04 folosind Let's Encrypt, cea mai recentă versiune LTS Node.js, cea mai recentă ramură principală a Nginx și cea mai recentă versiune Ghost.

Hai să criptăm

Înainte de a începe acest pas, asigurați-vă că ați setat înregistrări DNS pentru domeniul dvs.

Vom folosi Let's Encrypt pentru a obține certificate TLS pentru blogul nostru Ghost. Nu uitați să înlocuiți toate instanțele example.comcu numele de domeniu.

  1. Sistem de actualizare:

    apt update && apt upgrade -y
    
  2. Instalați instrumentele necesare:

    apt install -y zip build-essential
    
  3. Instalează clientul Encrypt:

    apt install -y letsencrypt
    
  4. Verificați versiunea:

    letsencrypt --version
    # letsencrypt 0.4.1
    
  5. Obține certificat

    letsencrypt certonly -d example.com -d www.example.com --email john.doe@mail.com --agree-tos --standalone
    

După parcurgerea etapelor anterioare, certificatul și cheia privată se vor afla în /etc/letsencrypt/live/example.comdirector.

Instalați NodeJS

Momentan, Ghost acceptă numai versiunile de nod 0.12.x , 4.2+ și 6.9+ .

Vom instala versiunea recomandată pentru Ghost, care se află v4 argon LTSla momentul acestei scrieri.

  1. Descărcați și instalați versiunea LTS a Node.js:

    curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
    apt install -y nodejs
    
  2. Verificați versiunea Node și NPM:

    node -v && npm -v
    # v4.6.2
    # 2.15.11
    

Instalați Nginx

  1. Descărcați și instalați Nginx:

    wget https://nginx.org/keys/nginx_signing.key && apt-key add nginx_signing.key
    
    rm nginx_signing.key
    
    printf "deb https://nginx.org/packages/mainline/ubuntu/ xenial nginx \ndeb-src https://nginx.org/packages/mainline/ubuntu/ xenial nginx \n" >> /etc/apt/sources.list.d/nginx.list
    
    apt update && apt install nginx -y
    
  2. Verificați versiunea Nginx:

    nginx -v
    # nginx version: nginx/1.11.5
    
  3. Începeți procesul Nginx:

    service nginx start
    
  4. Configurați Nginx ca proxy invers:

    vi /etc/nginx/conf.d/ghost.conf 
    
  5. Inserați următoarele în /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. Verificați sintaxa:

    nginx -t
    
  7. Reporniți Nginx:

    service nginx restart
    

Instalați Ghost

Dacă doriți să găzduiți mai multe bloguri Ghost pe același VPS, fiecare instanță Ghost trebuie să ruleze pe un port separat.

  1. Creare webrootdirector:

    mkdir -p /var/www/
    
  2. Creați un utilizator Ghost:

    adduser ghost
    
  3. Descărcați și instalați Ghost:

    cd /var/www
    wget https://ghost.org/zip/ghost-latest.zip
    unzip ghost-latest.zip -d ghost
    chown -R ghost:ghost /var/www/ghost/
    rm ghost-latest.zip
    
  4. Comutați la ghostutilizator:

    su - ghost
    
  5. Instalați Ghost:

    cd /var/www/ghost
    npm install --production
    
  6. Configurați Ghost schimbând urlproprietatea productionobiectului din config.jsfișier:

    cp config.example.js config.js
    
    vi config.js
    
    config = {
    // ### Production
    // When running Ghost in the wild, use the production environment.
    // Configure your URL and mail settings here
    production: {
        url: 'https://example.com',
        ...
    }
    ...
    ...        
    
  7. Salvați config.jsfișierul și ieșiți.

  8. Start Ghost:

    npm start --production
    

    Ghostul va alerga acum. Atât blogul front-end cât și interfața de administrare sunt securizate cu HTTPS și HTTP / 2 funcționează de asemenea. Puteți deschide browserul și vizita site-ul la https://example.com. Nu uitați să înlocuiți example.comcu numele dvs. de domeniu.

Fugi Duhul cu perseverență

Dacă închideți sesiunea de terminal cu VPS , blogul dvs. va coborî și el. Asta nu e bine. Pentru a evita acest lucru, vom folosi managerul de proces Forever. Asta va menține blogul nostru la zi 24/7.

  1. Treceți la ghostutilizator dacă nu sunteți:

    su - ghost
    
  2. Accesați ghostfolderul

    cd /var/www/ghost
    
  3. Install Forever:

    npm install forever
    
  4. Adaugă noua forevercomandă la calea ta:

    echo "export PATH=/var/www/ghost/node_modules/forever/bin:$PATH" >> ~/.bashrc
    source ~/.bashrc
    
  5. Începe Ghostul pentru totdeauna:

    NODE_ENV=production /var/www/ghost/node_modules/forever/bin/forever start index.js
    

    În acest moment, foreverar fi trebuit să pornească Ghost.

  6. Accesați https://example.com/ghostși creați un cont de administrator Ghost. Faceți acest lucru cât mai curând posibil.

Concluzie

Asta e. Avem acum un blog Ghost complet funcțional. Dacă doriți să schimbați tema Ghost implicită numită Casper într-una personalizată, puteți doar să descărcați și să dezarhivați tema în /var/www/ghost/content/themesfolder și să o selectați prin interfața de administrare Ghost, localizată la https://example.com/ghost.

Lasă un comentariu

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.

6 lucruri extrem de nebunești despre Nintendo Switch

6 lucruri extrem de nebunești despre Nintendo Switch

Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.

Promisiuni tehnologice care sunt încă nelivrate

Promisiuni tehnologice care sunt încă nelivrate

Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!

Te-ai întrebat vreodată cum câștigă hackerii bani?

Te-ai întrebat vreodată cum câștigă hackerii bani?

Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe