Kako namestiti Ghost na Fedora 25

Ghost je odprtokodna platforma za bloganje, ki od izdaje leta 2013 postaja vse bolj priljubljena med razvijalci in navadnimi uporabniki. Osredotoča se na vsebino in bloganje . Najbolj privlačna stvar pri Ghostu je preprost, čist in odziven dizajn. Svoje objave v blogu lahko pišete iz mobilnega telefona. Vsebina za Ghost je napisana z jezikom Markdown. Ghost je kot nalašč za posameznike ali majhne skupine piscev.

V tem priročniku bomo vzpostavili in uvedli varen blog Ghost na Fedora 25 VPS z uporabo Let's Encrypt , Certbot , Node.js , Nginx in PM2 .

Zahteve

  • Primerek strežnika Fedora 25 z najmanj 1 GB RAM-a .
  • Verjetno boste morali odpreti vrata 2368 z semanage port -a -t http_port_t -p tcp 2368.

Šifrirajmo

Preden začnete s tem korakom, se prepričajte, da ste nastavili zapise DNS za svojo domeno.

Za pridobitev potrdila TLS za naš blog Ghost bomo uporabili Let's Encrypt CA in odjemalca Certbot EFF. Ne pozabite zamenjati vseh primerov example.comz imenom vaše domene.

  1. Posodobitev sistema:

    dnf check-update || dnf upgrade -y
    
  2. Namestite potrebna orodja:

    dnf install @development-tools -y
    
  3. Namestite Certbot (ali odjemalec Let's Encrypt):

    dnf install certbot -y
    
  4. Preverite različico Certbota:

    certbot --version
    # certbot 0.12.0
    
  5. Pridobite potrdilo v samostojnem načinu:

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

Po prejšnjih korakih bosta vaše potrdilo in zasebni ključ v /etc/letsencrypt/live/example.comimeniku.

Namestite NodeJS

Ghost currently supports Node versions 0.12.x, 4.2+, and 6.9+ only.

Namestili bomo podprto različico za Ghost, ki je v6 Boron LTSv času tega pisanja.

  1. Prenesite in namestite najnovejšo LTS različico Node.js:

    dnf install nodejs -y
    
  2. Preverite različico vozlišča in NPM:

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

Namestite Nginx

  1. Prenesite in namestite Nginx:

    dnf install nginx -y
    
  2. Preverite različico Nginxa:

    nginx -v
    # nginx version: nginx/1.10.2
    
  3. Zaženite in omogočite storitev Nginx:

    systemctl start nginx.service && systemctl enable nginx.service
    
  4. Konfigurirajte Nginx kot povratni proxy:

    vi /etc/nginx/conf.d/ghost.conf
    
  5. Prilepite naslednje v /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. Preverite sintakso Nginxa:

    nginx -t
    
  7. Ponovno naložite konfiguracijo Nginxa:

    systemctl reload nginx.service
    

Namestite Ghost

Če želite na istem VPS-u gostiti več blogov Ghost, se mora vsak primerek Ghost izvajati na ločenih vratih.

  1. Naredi webrootimenik:

    mkdir -p /var/www/
    
  2. Ustvarite novega uporabnika duha:

    useradd -c "Ghost Application" ghost 
    
  3. Prenesite Ghost:

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

    unzip -uo ghost.zip -d /var/www/ghost
    rm -f ghost.zip
    
  5. Pomaknite se do webroot:

    cd /var/www/ghost
    
  6. Spremenite lastništvo webroot imenika:

    chown -R ghost:ghost .
    
  7. Preklopi na novega uporabnika duhov:

    su - ghost
    
  8. Pomaknite se do webroot:

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

    npm install --production
    
  10. Konfigurirajte Ghost s spremembo urlin maillastnostjo productionpredmeta znotraj config.jsdatoteke:

    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: ''
                }
              }
        },
            . . .
            . . .
        },
    }
    . . .
    . . .        
    

    NOTE: You should configure mail also. Consult the official Ghost documentation on how to do that.

  11. Začni Ghost:

    npm start --production
    

    Ghost bo zdaj tekel. Oba blog front-end in admin vmesnik so zavarovane s HTTPS in HTTP / 2 deluje tudi. Odprete lahko brskalnik in obiščete spletno mesto na naslovu https://example.com. Ne pozabite zamenjati example.comz imenom vaše domene.

  12. Zaustavite postopek Ghost s pritiskom na CTRL+ Cin zapustite uporabnika ghost nazaj na root uporabnika:

    exit
    

Namestite PM2

Če zaprete svojo terminalsko sejo s svojim VPS , bo tudi vaš blog ugasnil. To ni dobro. Da bi se temu izognili, bomo uporabili upravljalnik procesov PM2 . Tako bo naš blog aktiven 24 ur na dan.

  1. Namestite najnovejšo stabilno različico upravitelja procesov PM2:

    npm install -g pm2@latest
    
  2. Preverite različico PM2:

    pm2 -v
    # 2.4.6
    
  3. Ponovno preklopite na uporabnika duhov:

    su - ghost
    
  4. Nastavite NODE_ENVspremenljivko okolja na produkcijo:

    echo "export NODE_ENV=production" >> ~/.bashrc && source ~/.bashrc
    
  5. Zaženite (demonizirajte) aplikacijo Ghost s PM2:

    pm2 start /var/www/ghost/index.js --name "Ghost Blog"
    
  6. Pomaknite se do https://example.com/ghost/in ustvarite skrbniškega uporabnika Ghost. Naredite to čim prej.

Zaključek

To je to. Zdaj imamo popolnoma delujoč blog Ghost. Če želite spremeniti privzeto temo Ghost, imenovano Casper, v temo po meri, lahko temo preprosto prenesete in razpakirate v /var/www/ghost/content/themesmapo ter jo izberete prek skrbniškega vmesnika Ghost, ki se nahaja na https://example.com/ghost.

Pusti komentar

Vzpon strojev: aplikacije AI v resničnem svetu

Vzpon strojev: aplikacije AI v resničnem svetu

Umetna inteligenca ni v prihodnosti, tukaj je prav v sedanjosti. V tem blogu preberite, kako so aplikacije umetne inteligence vplivale na različne sektorje.

DDOS napadi: kratek pregled

DDOS napadi: kratek pregled

Ste tudi vi žrtev DDOS napadov in ste zmedeni glede načinov preprečevanja? Preberite ta članek, če želite rešiti svoja vprašanja.

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Morda ste že slišali, da hekerji zaslužijo veliko denarja, a ste se kdaj vprašali, kako zaslužijo takšen denar? razpravljajmo.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Ali želite videti revolucionarne izume Googla in kako so ti izumi danes spremenili življenje vsakega človeka? Nato preberite v blogu in si oglejte Googlove izume.

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Koncept samovozečih avtomobilov, ki zapeljejo na ceste s pomočjo umetne inteligence, so sanje, ki jih imamo že nekaj časa. A kljub številnim obljubam jih ni nikjer. Preberite ta blog, če želite izvedeti več…

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Ker se znanost hitro razvija in prevzame veliko naših prizadevanj, se povečuje tudi tveganje, da se podvržemo nerazložljivi singularnosti. Preberite, kaj bi za nas lahko pomenila singularnost.

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Preberite blog, če želite na najpreprostejši način spoznati različne plasti v arhitekturi velikih podatkov in njihove funkcionalnosti.

Razvoj shranjevanja podatkov – Infografika

Razvoj shranjevanja podatkov – Infografika

Metode shranjevanja podatkov so se lahko razvijale od rojstva podatkov. Ta blog pokriva razvoj shranjevanja podatkov na podlagi infografike.

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

V tem digitalno vodenem svetu so pametne naprave za dom postale ključni del življenja. Tukaj je nekaj neverjetnih prednosti pametnih naprav za dom o tem, kako naredijo naše življenje vredno življenja in poenostavijo.

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Pred kratkim je Apple izdal macOS Catalina 10.15.4 dopolnilno posodobitev za odpravo težav, vendar se zdi, da posodobitev povzroča več težav, ki vodijo do opečenja računalnikov Mac. Preberite ta članek, če želite izvedeti več