Cum să implementați Ghost pe CentOS 7.3

Ghost este o platformă de bloguri open source care câștigă popularitate în rândul dezvoltatorilor și utilizatorilor obișnuiți de la 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 CentOS 7 folosind Let's Encrypt, Node.js și Nginx.

Hai să criptăm (Certbot)

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

Vom folosi autorizația „Encrypt Certificate” și clientul Certbot 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:

    yum check-update && yum update
    
  2. Instalați instrumente de dezvoltare:

    yum groupinstall -y 'Development Tools'
    
  3. Activați depozitul EPEL (pachete suplimentare pentru Enterprise Linux).

    # Certbot is packaged in EPEL (Extra Packages for Enterprise Linux). To use Certbot, you must first enable the EPEL repository.
    yum install -y epel-release
    
  4. Instalați Certbot (aka client Let's Encrypt):

    yum install -y certbot
    
  5. Verificați versiunea:

    certbot --version
    # certbot 0.9.3
    
  6. Obține certificat:

    certbot 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ă Node v4.x argon LTSla momentul acestei scrieri.

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

    curl --silent --location https://rpm.nodesource.com/setup_4.x | bash -
    yum --disablerepo "*" --enablerepo "nodesource" install -y nodejs
    
  2. Verificați versiunea Node și NPM:

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

Instalați Nginx

  1. Rulați vi /etc/yum.repos.d/nginx.repoși copiați / lipiți directivele de mai jos și salvați și ieșiți:

    [nginx]
    name=nginx repo
    baseurl=https://nginx.org/packages/mainline/centos/7/$basearch/
    gpgcheck=0
    enabled=1
    
  2. Descărcați și instalați Nginx:

    yum install -y nginx
    
  3. Verificați versiunea Nginx:

    nginx -v
    # nginx version: nginx/1.11.8
    
  4. Începeți procesul Nginx și verificați starea:

    systemctl start nginx
    systemctl status nginx
    
  5. Configurați Nginx ca proxy invers:

    vi /etc/nginx/conf.d/ghost.conf
    
  6. Adăugați următoarele /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;
        }
    }
    
  7. Verificați sintaxa:

    nginx -t
    
  8. Reporniți Nginx:

    systemctl restart nginx
    

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:

    useradd -c "Ghost Application" 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. Instalați managerul de proces pentru 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. Pentru a verifica versiunea rulantă a Ghost, du-te https://example.com/ghost/about/după crearea contului de admin.

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