Nainštalujte Hexo na CentOS 7

Hexo je statická blogová platforma vytvorená pomocou Node.js. V porovnaní s inými platformami statických blogov, ako je Jekyll, je to rýchle.

V tomto návode vysvetlím, ako vytvoriť a nasadiť Hexo blog. Kroky sú pomerne jednoduché, napísané pre CentOS 7, Node.js 4.4. Môj lokálny počítač je Fedora 23.

Predpoklady

Začíname s čerstvo nainštalovaným systémom CentOS 7. Vyžadujú sa nasledujúce softvérové ​​balíky:

  • gcc-c a gcc-c++
  • urobiť a git
  • nginx
  • openssl
  • nodejs a npm

Budete sa musieť prihlásiť ako root alebo ako používateľ s oprávneniami sudo.

Nainštalujte pomôcky

$ yum install -y gcc gcc-c++ make git openssl

Nainštalujte Nginx

Môžete nainštalovať nginxz predvoleného úložiska:

$yum install -y nginx

... alebo si nainštalujte stabilnú verziu z oficiálneho repozitára Nginx, tu vyberáme druhú.

Vytvorte repo súbor s názvom nginx.repo, ktorého obsah je:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=0
enabled=1

... a skopírujte to do /etc/yum.repo.d/,

$ cp nginx.repo /etc/yum.repo.d/
$ yum update and yum install -y nginx
$ systemctl enable nginx and systemctl start nginx

Nainštalujte Node.js

Nainštalujeme dlhodobo podporovaný súbor Node.js z oficiálneho repozitára Node.js.

$ curl --silent --location https://rpm.nodesource.com/setup_4.x | bash -
$ yum update and yum install -y nodejs

Vytvorte nového používateľa

Zvyčajne je lepšie vytvoriť bežného používateľa na spustenie vášho blogu, pretože root má oprávnenia superužívateľa.

Tu vytvoríme používateľa s názvom vultra pridáme ho do skupiny wheela nginx:

$ useradd -d /home/vultr -m -r -U -s /bin/bash
$ passwd vultr
$ usermod -aG nginx vultr
$ usermod -aG wheel vultr

Vygenerujte pár kľúčov SSH

Je užitočné a potrebné prihlásiť sa pomocou kľúča ssh.

$ ssh-keygen -b 4096 -C "vultr@example.com"

Po vytvorení nášho páru kľúčov ssh skopírujte verejný kľúč (zvyčajne id_rsa.pub) ~/.ssh/authorized_keysna server:

ssh-copy-id -i ~/.ssh/id_rsa.pub vultr@example.com

A teraz máme nainštalované všetky balíky pred zostavením.

Vytvorte si svoj Hexo blog

Nainštalujte Hexo

Prihláste sa ako vultrpoužívateľ. Potom vytvorte ~/web/web/vultra ~/web/git/vultr:

### This is our hexo blog root directory
$ mkdir -p ~/web/web/vultr
### This is our git repository directory on the server
$ mkdir -p ~/web/git/vultr
### This is our deploy directory
$ mkdir -p ~/web/git/hexo

Zadajte ~/web/web/vultra nainštalujte Hexo:

$ cd ~/web/web/vultr
$ sudo npm install -g hexo-cli hexo-server
$ hexo init && npm install --save

Teraz už len musíme vytvoriť náš nový blog.

Upraviť _config.yml, ak chcete zmeniť webovú adresu svojho blogu. Potom spustite:

$ hexo g

Váš blog bol vygenerovaný. Súbory HTML sa nachádzajú pod ~/web/web/vultr/public.

Nastavte svoj server Nginx

V tomto bode stále nemáme prístup na našu webovú stránku. Preto musíme nakonfigurovať Nginx.

Nginx beží ako používateľ uvedený nginxv nginxskupine, a preto musíme pridať vultrdo skupiny nginx.

$ chown -R vultr:nginx ~/web

Vytvorte konfiguračný súbor Nginx s názvom, vultr.confpod ~/web/ktorým je obsah viac-menej takýto:

server {
    listen 80;
    listen [::]:80;
    ## if https is desired, please uncomment the following lines
    #listen 443 ssl http2;
    #listen [::]:443 ssl http2;

    server_name example.com, www.example.com;

    ## if forcing https, please uncomment the following lines
    #if ($scheme = http) {
    #    return 301 https://$server_name$request_uri;
    #}

    location / {
    root /home/vultr/web/web/vultr/public;
    index index.html;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    ## if https is desired, please uncomment the following lines
    #proxy_set_header X-Forwarded-Proto https;
    }
}

Skopírovať vultr.confdo /etc/nginx/config.d/a reštartujte Nginx:

$ sudo ln -sf ~/web/vultr.conf /etc/nginx/config.d/
$ sudo systemctl restart nginx

Teraz je náš blog prístupný cez webový prehliadač.

Použitie Gitu na nasadenie vášho blogu

Keďže blog je už nastavený, táto časť návodu je voliteľná.

V tomto bode je trochu nepohodlné písať blogový príspevok, pretože by sme sa museli prihlásiť a písať na server. Lepším riešením by bolo napísať na našom lokálnom počítači, poslať príspevok na server a nechať Hexo automaticky generovať statické súbory. Vzhľadom na to, že git má háky, ktoré môžu robiť veľa vecí, môžeme na dosiahnutie tohto nastavenia použiť git hook.

Vytvorte holé úložisko na serveri

Prihláste sa na server znova ako používateľ vultr. Vytvorte holé úložisko:

$ cd ~/web/git/vultr
$ git init --bare
$ cd hooks

Napíšte bash súbor s názvom, post-receivektorý nasadí náš blog po každom stlačení:

#!/bin/bash
deploy_to_dir="/home/vultr/web/git/hexo"

GIT_WORK_TREE=$deploy_to_dir git checkout -f master
echo "DEPLOY:   master  copied to  $deploy_to_dir"

hexo_dir="/home/vultr/web/web/vultr/"

cd $hexo_dir

hexo clean && hexo --silent g

if [[ $? == 0 ]]; then
    echo "Congratulations! Your blog has been correctly deployed"
else:
    echo "Unfortunately your blog has not been deployed correctly"
fi

Predtým, ako bude nasadenie fungovať, musíme na serveri spustiť aj tieto príkazy:

cd ~/web/web/vultr/
rm -rf source scaffolds _config.yml themes
ln -sf /home/vultr/web/git/hexo/themes/tranquilpeak  themes/
ln -sf /home/vultr/web/git/hexo/source .
ln -sf /home/vultr/web/git/hexo/scaffolds .
ln -sf /home/vultr/web/git/hexo/_config.yml .

Nastavte svoje lokálne úložisko git

Na lokálnom počítači musíme tiež vytvoriť úložisko. Tieto kroky sa môžu líšiť, ak používate počítačový operačný systém iný ako Fedora.

Budete musieť mať nainštalovaný git.

Nastavte lokálne úložisko git:

$ mkdir -p ~/vultr/git/vultr`
$ cd ~/vultr/git/vultr and git init
$ git remote add production ssh://vultr@example.com:/home/vultr/web/git/vultr

Na písanie príspevku je užitočné nainštalovať Hexo na váš lokálny počítač. Tu nastavíme Hexo adresár na písanie.

$ mkdir ~/vultr/vultr && cd ~/vultr/vultr
$ hexo init && npm install --save
$ mv  source  _config.yml themes scaffolds ~/vultr/git/vultr
$ ln -sf ~/vultr/git/vultr/source .
$ ln -sf ~/vultr/git/vultr/_config.yml .
$ ln -sf ~/vultr/git/vultr/scaffolds .
$ hexo new "Test Post"

Nastavenie je dokončené. Príspevok môžete odoslať na server pomocou nasledujúcich príkazov:

$ cd ~/vultr/git/vultr
$ git add . && git commit -m "new post"
$ git push production master

Po úspechu bude blog automaticky aktualizovaný. Na zdravie.

Zanechať komentár

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Umelá inteligencia nie je v budúcnosti, je tu priamo v súčasnosti V tomto blogu si prečítajte, ako aplikácie umelej inteligencie ovplyvnili rôzne sektory.

Útoky DDOS: Stručný prehľad

Útoky DDOS: Stručný prehľad

Ste aj vy obeťou DDOS útokov a máte zmätok ohľadom metód prevencie? Ak chcete vyriešiť svoje otázky, prečítajte si tento článok.

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Možno ste už počuli, že hackeri zarábajú veľa peňazí, ale premýšľali ste niekedy nad tým, ako môžu zarábať také peniaze? poďme diskutovať.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Chcete vidieť revolučné vynálezy od Google a ako tieto vynálezy zmenili život každého dnešného človeka? Potom si prečítajte na blogu a pozrite si vynálezy spoločnosti Google.

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Koncept samoriadených áut vyraziť na cesty s pomocou umelej inteligencie je snom, ktorý máme už nejaký čas. Ale napriek niekoľkým prísľubom ich nikde nevidno. Prečítajte si tento blog a dozviete sa viac…

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Ako sa veda vyvíja rýchlym tempom a preberá veľa nášho úsilia, zvyšuje sa aj riziko, že sa vystavíme nevysvetliteľnej singularite. Prečítajte si, čo pre nás môže znamenať singularita.

Funkcionality vrstiev referenčnej architektúry veľkých dát

Funkcionality vrstiev referenčnej architektúry veľkých dát

Prečítajte si blog, aby ste čo najjednoduchším spôsobom spoznali rôzne vrstvy architektúry veľkých dát a ich funkcie.

Vývoj ukladania dát – Infografika

Vývoj ukladania dát – Infografika

Spôsoby ukladania údajov sa môžu vyvíjať už od zrodu údajov. Tento blog sa zaoberá vývojom ukladania údajov na základe infografiky.

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

V tomto digitálnom svete sa inteligentné domáce zariadenia stali kľúčovou súčasťou života. Tu je niekoľko úžasných výhod inteligentných domácich zariadení o tom, ako robia náš život, ktorý stojí za to žiť, a ktorý zjednodušujú.

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Spoločnosť Apple nedávno vydala doplnkovú aktualizáciu macOS Catalina 10.15.4 na opravu problémov, ale zdá sa, že táto aktualizácia spôsobuje ďalšie problémy, ktoré vedú k blokovaniu počítačov Mac. Prečítajte si tento článok a dozviete sa viac