Installige Hexo operatsioonisüsteemi CentOS 7

Hexo on staatiline ajaveebiplatvorm, mis on loodud Node.js-iga. See on kiire võrreldes teiste staatiliste ajaveebiplatvormidega, näiteks Jekylliga.

Selles õpetuses selgitan, kuidas Hexo ajaveebi luua ja juurutada. Toimingud on üsna lihtsad, kirjutatud CentOS 7, Node.js 4.4 jaoks. Minu kohalik masin on Fedora 23.

Eeltingimused

Alustame värskelt installitud CentOS 7 süsteemiga. Vaja on järgmisi tarkvarapakette:

  • gcc-c ja gcc-c++
  • tee ja git
  • nginx
  • openssl
  • nodejs ja npm

Peate sisse logima administraatorina või sudo õigustega kasutajana.

Installige kommunaalteenused

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

Installige Nginx

Saate installida nginxvaikerepost:

$yum install -y nginx

... või installige stabiilne versioon ametlikust Nginxi repost, siin valime viimase.

Looge repofail nimega nginx.repo, mille sisu on:

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

... ja kopeerige see asukohta /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

Installige Node.js

Installime kaua toetatud Node.js'i ametlikust Node.js repost.

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

Looge uus kasutaja

Tavaliselt on parem luua oma ajaveebi pidamiseks tavakasutaja, kuna rootil on superkasutaja õigused.

Siin loome kasutaja nimega vultrja lisame selle rühma wheelja nginx:

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

Looge SSH-võtmepaar

Kasulik ja vajalik on sisse logida ssh-võtmega.

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

Pärast ssh-võtmepaari loomist kopeerige avalik võti (tavaliselt id_rsa.pub) ~/.ssh/authorized_keysserverisse:

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

Ja nüüd on meil kõik ehituseelsed paketid installitud.

Looge oma Hexo ajaveebi

Installige Hexo

Logi sisse vultrkasutajana. Seejärel looge ~/web/web/vultrja ~/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

Sisestage ~/web/web/vultrja installige Hexo:

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

Nüüd peame lihtsalt looma oma uue ajaveebi.

Muuda _config.yml, et muuta oma ajaveebisaidi URL-i. Seejärel käivitage:

$ hexo g

Teie ajaveeb on nüüd loodud. HTML-failid asuvad all ~/web/web/vultr/public.

Seadistage oma Nginxi server

Praegusel hetkel ei pääse me endiselt oma veebisaidile. Seetõttu peame Nginxi konfigureerima.

Nginx jookseb kui kasutaja nimega nginxon nginxrühm, ja sellepärast peame lisada vultrgruppi nginx.

$ chown -R vultr:nginx ~/web

Loo nginx config fail nimega vultr.confalusel ~/web/, mille sisu on rohkem või vähem niimoodi:

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;
    }
}

Kopeeri vultr.confet /etc/nginx/config.d/taaskäivitada nginx:

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

Nüüd on meie ajaveebi juurdepääsetav veebibrauseriga.

Giti kasutamine oma ajaveebi juurutamiseks

Kuna ajaveebi on juba seadistatud, on see õpetuse osa valikuline.

Siinkohal on blogipostituse kirjutamine veidi ebamugav, sest meil oleks vaja sisse logida ja serverisse kirjutada. Parem lahendus oleks kirjutada meie kohalikus masinas, lükata postitus serverisse ja lasta Hexol automaatselt staatilised failid genereerida. Arvestades, et gitil on konksud, millega saab teha paljusid asju, saame selle seadistuse saavutamiseks kasutada git-konksu.

Looge serverisse tühi hoidla

Logige serverisse uuesti kasutajana sisse vultr. Looge tühi hoidla:

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

Kirjutage bash-fail nimega, post-receivemis juurutab meie ajaveebi pärast iga tõuget:

#!/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

Enne juurutamise toimimist peame serveris käivitama ka järgmised käsud:

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 .

Seadistage oma kohalik git-hoidla

Kohalikus masinas peame looma ka hoidla. Need sammud võivad erineda, kui kasutate muud töölaua OS-i kui Fedora.

Teil peab olema git installitud.

Seadistage kohalik git-hoidla:

$ 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

Postituse kirjutamiseks on kasulik installida Hexo oma kohalikku masinasse. Siin seadistame kirjutamiseks Hexo kataloogi.

$ 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"

Seadistamine on lõpetatud. Postituse saate oma serverisse lükata järgmiste käskudega:

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

Edu korral uuendatakse ajaveebi automaatselt. Tervist.

Jäta kommentaar

Masinate tõus: AI tegelikud rakendused

Masinate tõus: AI tegelikud rakendused

Tehisintellekt ei ole tulevik, see on siin, olevikus. Sellest blogist loe, kuidas tehisintellekti rakendused on mõjutanud erinevaid sektoreid.

DDOS-i rünnakud: lühike ülevaade

DDOS-i rünnakud: lühike ülevaade

Kas olete ka DDOS-i rünnakute ohver ja olete segaduses ennetusmeetodite osas? Oma päringute lahendamiseks lugege seda artiklit.

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Võib-olla olete kuulnud, et häkkerid teenivad palju raha, kuid kas olete kunagi mõelnud, kuidas nad sellist raha teenivad? arutleme.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Kas soovite näha Google'i revolutsioonilisi leiutisi ja seda, kuidas need leiutised muutsid iga inimese elu tänapäeval? Seejärel lugege ajaveebi, et näha Google'i leiutisi.

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Isejuhtivate autode kontseptsioon tehisintellekti abil teedele jõudmiseks on meil juba mõnda aega unistus. Kuid vaatamata mitmele lubadusele pole neid kusagil näha. Lisateabe saamiseks lugege seda ajaveebi…

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Kuna teadus areneb kiiresti, võttes üle suure osa meie jõupingutustest, suureneb ka oht, et allume seletamatule singulaarsusele. Loe, mida singulaarsus meie jaoks tähendada võiks.

Suurandmete viitearhitektuuri kihtide funktsioonid

Suurandmete viitearhitektuuri kihtide funktsioonid

Lugege ajaveebi, et kõige lihtsamal viisil teada saada Big Data Architecture'i erinevaid kihte ja nende funktsioone.

Andmesalvestuse areng – infograafik

Andmesalvestuse areng – infograafik

Andmete säilitamise meetodid on arenenud alates andmete sünnist. See ajaveeb käsitleb infograafiku alusel andmete salvestamise arengut.

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

Selles digipõhises maailmas on nutikad koduseadmed muutunud elu oluliseks osaks. Siin on mõned nutikate koduseadmete hämmastavad eelised, mis muudavad meie elu elamisväärseks ja lihtsamaks.

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

Hiljuti andis Apple välja macOS Catalina 10.15.4 täiendusvärskenduse probleemide lahendamiseks, kuid tundub, et värskendus põhjustab rohkem probleeme, mille tulemuseks on Maci masinate tellimine. Lisateabe saamiseks lugege seda artiklit