Įdiekite „Hexo“ „CentOS 7“.

Hexo yra statinė tinklaraščio platforma, sukurta naudojant Node.js. Tai greita, palyginti su kitomis statinėmis tinklaraščių platformomis, tokiomis kaip Jekyll.

Šioje pamokoje paaiškinsiu, kaip sukurti ir įdiegti Hexo tinklaraštį. Veiksmai yra gana paprasti, parašyti CentOS 7, Node.js 4.4. Mano vietinis įrenginys yra „Fedora 23“.

Būtinos sąlygos

Pradedame nuo naujai įdiegtos CentOS 7 sistemos. Reikalingi šie programinės įrangos paketai:

  • gcc-c ir gcc-c++
  • padaryti ir git
  • nginx
  • openssl
  • nodejs ir npm

Turėsite prisijungti kaip root arba kaip vartotojas su sudo teisėmis.

Įdiekite komunalines paslaugas

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

Įdiekite „Nginx“.

Galite įdiegti nginxiš numatytojo atpirkimo:

$yum install -y nginx

... arba įdiekite stabilią versiją iš oficialaus Nginx repo, čia pasirenkame pastarąją.

Sukurkite atpirkimo failą pavadinimu nginx.repo, kurio turinys yra:

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

... ir nukopijuokite jį į /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

Įdiekite Node.js

Diegiame ilgą laiką palaikomą Node.js iš oficialaus Node.js atpirkimo.

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

Sukurti naują vartotoją

Paprastai geriau sukurti paprastą vartotoją, kuris paleistų jūsų tinklaraštį, nes root turi super vartotojo teises.

Čia sukuriame vartotoją vardu vultrir pridedame jį prie grupės wheelir nginx:

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

Sukurkite SSH raktų porą

Naudinga ir būtina prisijungti naudojant ssh raktą.

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

Sukūrę ssh raktų porą, nukopijuokite viešąjį raktą (dažniausiai id_rsa.pub) į ~/.ssh/authorized_keysserverį:

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

Ir dabar mes įdiegėme visus paruoštus paketus.

Sukurkite savo Hexo tinklaraštį

Įdiekite Hexo

Prisijunkite kaip vultrvartotojas. Tada sukurkite ~/web/web/vultrir ~/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

Įveskite ~/web/web/vultrir įdiekite „Hexo“:

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

Dabar belieka sukurti savo naują tinklaraštį.

Redaguoti _config.yml, jei norite pakeisti savo tinklaraščio svetainės URL. Tada paleiskite:

$ hexo g

Jūsų tinklaraštis jau sukurtas. HTML failai yra po ~/web/web/vultr/public.

Nustatykite savo Nginx serverį

Šiuo metu vis dar negalime pasiekti savo svetainės. Todėl turime sukonfigūruoti Nginx.

Nginx veikia kaip vartotojas, pavadintą nginxį nginxgrupę, ir tai, kodėl mes turime pridėti vultrį grupę nginx.

$ chown -R vultr:nginx ~/web

Sukurti Nginx config failą pavadinimu vultr.confpagal ~/web/kurių turinys yra daugiau ar mažiau panašus į šį:

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

Nukopijuokite vultr.confį /etc/nginx/config.d/ir iš naujo paleiskite Nginx:

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

Dabar mūsų tinklaraštis pasiekiamas naudojant interneto naršyklę.

„Git“ naudojimas tinklaraščiui įdiegti

Kadangi tinklaraštis jau nustatytas, ši mokymo programos dalis yra neprivaloma.

Šiuo metu šiek tiek nepatogu rašyti tinklaraščio įrašą, nes mums reikėtų prisijungti ir rašyti serveryje. Geresnis sprendimas būtų rašyti vietiniame kompiuteryje, perkelti įrašą į serverį ir leisti Hexo automatiškai generuoti statinius failus. Atsižvelgiant į tai, kad git turi kabliukus, kurie gali atlikti daug dalykų, galime naudoti git kabliuką, kad pasiektume šią sąranką.

Serveryje sukurkite atvirą saugyklą

Prisijunkite prie serverio dar kartą kaip vartotojas vultr. Sukurkite atvirą saugyklą:

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

Parašykite bash failą pavadinimu, post-receivekuris įdiegs mūsų tinklaraštį po kiekvieno paspaudimo:

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

Kad diegimas veiktų, taip pat turime paleisti šias komandas serveryje:

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 .

Nustatykite vietinę git saugyklą

Vietiniame kompiuteryje taip pat turime sukurti saugyklą. Šie veiksmai gali skirtis, jei naudojate kitą darbalaukio OS nei Fedora.

Jums reikės įdiegti git.

Nustatykite vietinę git saugyklą:

$ 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

Norint parašyti įrašą, naudinga įdiegti Hexo vietiniame kompiuteryje. Čia mes nustatome Hexo katalogą rašymui.

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

Sąranka baigta. Galite nusiųsti įrašą į savo serverį naudodami šias komandas:

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

Sėkmingai tinklaraštis bus automatiškai atnaujintas. Sveikinu.

Palikti komentarą

Mašinų augimas: AI pritaikymas realiame pasaulyje

Mašinų augimas: AI pritaikymas realiame pasaulyje

Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.

DDOS atakos: trumpa apžvalga

DDOS atakos: trumpa apžvalga

Ar taip pat esate DDOS atakų auka ir esate sumišęs dėl prevencijos metodų? Perskaitykite šį straipsnį, kad išspręstumėte savo užklausas.

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Ar norite pamatyti revoliucinius „Google“ išradimus ir kaip šie išradimai pakeitė kiekvieno žmogaus gyvenimą šiandien? Tada skaitykite tinklaraštį, kad pamatytumėte „Google“ išradimus.

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Savavaledžių automobilių koncepcija, kuri išvažiuotų į kelius su dirbtinio intelekto pagalba, yra svajonė, kurią jau kurį laiką svajojame. Tačiau nepaisant kelių pažadų, jų niekur nematyti. Skaitykite šį tinklaraštį, kad sužinotumėte daugiau…

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Kadangi mokslas sparčiai vystosi, perimdamas daug mūsų pastangų, taip pat didėja rizika, kad pateksime į nepaaiškinamą singuliarumą. Skaitykite, ką mums gali reikšti išskirtinumas.

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.

Duomenų saugojimo raida – infografika

Duomenų saugojimo raida – infografika

Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.

6 nuostabūs išmaniųjų namų įrenginių privalumai

6 nuostabūs išmaniųjų namų įrenginių privalumai

Šiame skaitmeniniu būdu pagrįstame pasaulyje išmanieji namų įrenginiai tapo svarbia gyvenimo dalimi. Štai keletas nuostabių išmaniųjų namų įrenginių privalumų, kaip jie daro mūsų gyvenimą vertą gyventi ir paprastesnį.

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

Neseniai „Apple“ išleido „macOS Catalina 10.15.4“ priedą, skirtą problemoms išspręsti, tačiau atrodo, kad dėl atnaujinimo kyla daugiau problemų, dėl kurių „Mac“ įrenginiai blokuojami. Norėdami sužinoti daugiau, perskaitykite šį straipsnį