Hvordan lage en blogg med Hugo

Hvordan lage en blogg med Hugo

Introduksjon

Hugo er en statisk nettstedsgenerator med lynrask gjengivelseshastighet og utmerket brukervennlighet. Takket være alle de innholdsorienterte funksjonene, kan du alltid fokusere på å lage innhold i stedet for å bygge miljøet:

  • Med Hugo kan du bygge et statisk nettsted som kjører hvor som helst på flere minutter uten å bekymre deg for kjedelige avhengigheter eller databaser.
  • Du kan komponere innholdet ditt i Markdown, den mest praktiske skrivestilen, og umiddelbart se endringene du har gjort på nettet.
  • Videre kan du få mest mulig ut av Hugos velstående temalager og raskt voksende fellesskap.

I denne opplæringen vil jeg vise deg hvordan du installerer og bruker Hugo til å bygge en statisk bloggside på en CentOS-basert Vultr LEMP-serverforekomst.

Forutsetninger

Logg på forekomsten din som en ikke-rootbruker med sudo-tillatelser. Se hvordan du oppretter en slik bruker i denne artikkelen .

Trinn 1: Installer Hugo-programmet

Hugo kan installeres på nesten alle ordinære plattformer. For CentOS trenger du bare å laste ned den nyeste programfilen i et .tar.gzarkiv og pakke den ut til et passende sted. I skrivende stund er siste versjon 0.15.

sudo yum update -y
sudo yum install git -y
cd ~
wget https://github.com/spf13/hugo/releases/download/v0.15/hugo_0.15_linux_amd64.tar.gz
tar -zxvf hugo_0.15_linux_amd64.tar.gz
sudo mv hugo_0.15_linux_amd64/hugo_0.15_linux_amd64 /usr/local/bin/hugo

Test installasjonen med følgende kommando:

 hugo version

Trinn 2: Bygg nettstedet ditt

Med Hugo kan du bygge nettstedet ditt fra en hvilken som helst mappe på serveren din. Her bygde jeg et nettsted i katalogen mysite/under hjemmekatalogen min.

cd ~
hugo new site ~/mysite

Kjør følgende kommandoer for å se nettstedets arkitektur:

cd mysite
ls -lF

Som du ser, ligner nettstedets nåværende arkitektur:

archetypes/

config.toml

content/

data/

layouts/

static/

Med ytterligere to kataloger som skal opprettes, themes/og public/, er hele arkitekturen til en Hugo-side kompakt, men likevel omfattende.

Som en start, vet at innholdet ditt skal lagres i katalogen content/.

Trinn 3: Installer temaer fra Hugo-depotet

For å installere alle temaer fra Hugo-depotet, kjør følgende kommandoer. Disse vil opprette en katalog som heter themes/i nettstedskatalogen din og laste ned alle temaene fra Hugo-tema-repoen.

cd ~/mysite/
git clone --depth 1 --recursive https://github.com/spf13/hugoThemes.git themes

Hvis du bare vil installere et enkelt tema, besøk Hugo-temaet for å finne favoritttemaet ditt. Kopier URL-en og lim den inn i git clonekommandoen nedenfor.

cd ~/mysite/
mkdir themes
cd themes
git clone https://github.com/jaden/twentyfourteen

Trinn 4: Gjør noen grunnleggende konfigurasjonsendringer

Filen som er navngitt config.tomli nettstedskatalogen inneholder den globale konfigurasjonen for Hugo-siden. Rediger filen med et tekstredigeringsprogram for å gjøre noen grunnleggende konfigurasjonsendringer som oppført nedenfor. Husk å erstatte verdiene i henhold til dine spesifikke forhold.

baseurl = "http://[YourSiteIP]/"
languageCode = "en-us"
title = "Your Site Name"
theme = "twentyfourteen"

Trinn 5: Komponer innholdet ditt

Skriv inn følgende kommando i nettstedkatalogen for å opprette en innholdsside i katalogen ~/mysite/content/post/.

cd ~/mysite/
hugo new post/about.md

Åpne filen i et tekstredigeringsprogram, formatet på filen skal ligne følgende.

+++
date = "2015-12-25T03:21:23Z"
draft = true
title = "about"

+++

Mellom de to linjene +++ligger metainformasjonen om innholdssiden din. Her kan du fjerne linjen draft = trueog endre tittellinjen som du ønsker.

Under den andre +++linjen legger du til innholdet du vil vise på nettsiden. Husk å skrive innholdet ditt på Markdown-språket.

## This is an H2 headline

Text goes here.

Etter å ha fullført denne redigeringen, hold tekstredigeringsprogrammet åpent for senere bruk.

Trinn 6: Juster innholdet ditt med Hugo-serveren

Du kan bruke Hugos innebygde webserver til å distribuere nettstedet ditt, som umiddelbart kan vise endringene dine på nettsiden så snart du endrer innholdet ditt i et tekstredigeringsprogram.

Åpne en annen terminal, konfigurer iptablesreglene for å tillate tilgang til nettstedet ditt på Hugo-serverens standardport 1313:

sudo iptables -I INPUT -p tcp --dport 1313 -j ACCEPT

Start Hugo-serveren:

hugo server --bind="[YourServerIP]"

Besøk nettstedet ditt fra en nettleser:

http://[YourServerIP]:1313

Nå kan du prøve å redigere innholdet i sidefilen i forrige terminal eller legge til/fjerne en sidefil. Du vil finne at eventuelle endringer i content/katalogen vil reflekteres samtidig på nettleserskjermen. Dette er en flott funksjon for en travel blogger fordi du alltid umiddelbart kan se endringene dine for bedre komposisjonsopplevelser.

Når du er ferdig med redigeringen, trykk for Ctrl+Cå stoppe Hugo-serveren.

Trinn 7: Publiser nettstedet ditt

Nå er det på tide å publisere nettstedet ditt på nettet. Kjør følgende kommandoer og Hugo vil generere alt det statiske innholdet som er egnet for publisering i public/katalogen.

cd ~/mysite
hugo

Merk : Hugo vil ikke slette gamle filer som ble generert tidligere når du kjører kommandoene ovenfor. For å unngå uventede resultater, kan du alltid slette public/katalogen før du kjører hugokommandoen eller spesifisere en ny utdatadestinasjon som vist i følgende kommando.

hugo --destination=public2

Siden Nginx-nettserveren allerede har kjørt på serveren, er alt du trenger å gjøre å kopiere innholdet i ~/mysite/public/katalogen eller andre tilpassede destinasjonskataloger til nettkatalogen din /usr/share/nginx/html/.

Slett originalfilene:

cd /usr/share/nginx/html/
sudo rm -rf background.jpg index.php logo.png

Kopier de statiske nettstedfilene dine til nettkatalogen:

cd ~/mysite/public
sudo cp -R ~/mysite/public/. /usr/share/nginx/html/

Det er det. Nå kan du besøke ditt superraske statiske nettsted fra nettleseren din: http://[YourServerIP].

For å se flere detaljer, bruk kommandoen hugo helpeller besøk Hugo offisielle nettsted .


Sett opp Cacti på Debian Jessie

Sett opp Cacti på Debian Jessie

Introduksjon Cacti er et åpen kildekode overvåkings- og grafverktøy som er fullt basert på RRD-data. Gjennom Cacti kan du overvåke nesten alle typer enheter

Installer Lets Encrypt SSL på ett-klikks WordPress-appen

Installer Lets Encrypt SSL på ett-klikks WordPress-appen

Introduksjon Lets Encrypt er en sertifikatmyndighetstjeneste som tilbyr gratis TLS/SSL-sertifikater. Installasjonsprosessen forenkles av Certbot,

Sett opp iRedMail på Debian Wheezy

Sett opp iRedMail på Debian Wheezy

Bruker du et annet system? Denne opplæringen viser deg hvordan du installerer gruppevaren iRedMail på en ny installasjon av Debian Wheezy. Du bør bruke en serve

Tre gratis serverkontrollpaneler (hurtiginstallasjon)

Tre gratis serverkontrollpaneler (hurtiginstallasjon)

1. Virtualmin/Webmin Virtualmin er et kraftig og fleksibelt kontrollpanel for webhotell for Linux- og UNIX-systemer basert på den velkjente Open Source-nettbasen

Bruker skjermen på Ubuntu 14.04

Bruker skjermen på Ubuntu 14.04

Skjerm er et program som tillater flere bruk av terminalsesjoner i ett vindu. Dette lar deg simulere flere terminalvinduer der det ma

Bruke Logrotate til å administrere loggfiler

Bruke Logrotate til å administrere loggfiler

Introduksjon Logrotate er et Linux-verktøy som forenkler administrasjonen av loggfiler. Den kjører vanligvis en gang om dagen via en cron-jobb, og administrerer loggbasen

Installere Docker CE på Ubuntu 16.04

Installere Docker CE på Ubuntu 16.04

Bruker du et annet system? Docker er en applikasjon som gjør det mulig å distribuere programmer som kjøres som containere. Det ble skrevet i det populære Go-programmet

Patching the Dirty Cow Exploit på CentOS

Patching the Dirty Cow Exploit på CentOS

Hva er Dirty Cow (CVE-2016-5195)? Dirty Cow-sårbarheten utnyttes gjennom hvordan Linux behandler kode. Det gjør det mulig for en uprivilegert bruker å gai

Konfigurer en ikke-rootbruker med Sudo Access på Ubuntu

Konfigurer en ikke-rootbruker med Sudo Access på Ubuntu

Å ha bare én bruker, som er root, kan være farlig. Så la oss fikse det. Vultr gir oss friheten til å gjøre som vi vil med våre brukere og våre servere

Installer Adminer på Debian/Ubuntu

Installer Adminer på Debian/Ubuntu

Adminer er et lett alternativ til phpMyAdmin. Til sammenligning er dens totale pakkestørrelse 400 KB, mot 4,2 MB med phpMyAdmin. I motsetning til phpMyAdmin, som

Slik installerer du GoAccess på Ubuntu 16.04

Slik installerer du GoAccess på Ubuntu 16.04

Bruker du et annet system? GoAccess er en åpen kildekode-nettlogganalysator. Du kan bruke den til analyse av logger på sanntidsbasis i enten terminalen eller

Konfigurer Nagios på Ubuntu: Del 1 - Nagios Server

Konfigurer Nagios på Ubuntu: Del 1 - Nagios Server

Denne artikkelen er en del av en todelt serie om installasjon og konfigurering av Nagios på Ubuntu 14.04. Del 1: Nagios Server Del 2: Oversikt over ekstern vert Nagio

Sett opp tidssone og NTP på Ubuntu 14.04

Sett opp tidssone og NTP på Ubuntu 14.04

Vultr-servere kan ikke distribueres med tidssonen/datoen/klokkeslettet du trenger på serveren din. Heldigvis kan vi manuelt stille inn tidssonen for å forhindre problemer

Distribuer en Meteor-applikasjon på Ubuntu

Distribuer en Meteor-applikasjon på Ubuntu

Denne artikkelen vil lede deg gjennom distribusjon av Meteor-appen din til en Vultr VPS som kjører Ubuntu 14.04. Det kan også fungere på andre Linux-distribusjoner (forsøk a

Arbeide med Linux-funksjoner

Arbeide med Linux-funksjoner

Introduksjon Linux-funksjoner er spesielle attributter i Linux-kjernen som gir prosesser og binære kjørbare spesifikke rettigheter som er normale

Høy tilgjengelighet ved bruk av privat nettverk på Ubuntu 16.04 med Keepalived

Høy tilgjengelighet ved bruk av privat nettverk på Ubuntu 16.04 med Keepalived

Noen arkitekturer med høy tilgjengelighet krever en flytende IP-adresse. Denne funksjonaliteten er tilgjengelig på Vultr-plattformen når privat nettverk har bee

Konfigurer bare SFTP-brukerkontoer på Ubuntu 14

Konfigurer bare SFTP-brukerkontoer på Ubuntu 14

Innledning Enkelte scenarier krever at du oppretter brukere med lese- og skrivetilgang til en enkelt katalog kun via FTP. Denne artikkelen vil vise deg hvordan t

Slik konfigurerer du Node.js Persistent-applikasjoner på Ubuntu 16.04

Slik konfigurerer du Node.js Persistent-applikasjoner på Ubuntu 16.04

Node.js-applikasjoner er populære for deres evne til å skalere. Å kjøre flere samtidige prosesser på flere servere gir lavere ventetid og større oppetid

Overvåk enhetene dine ved å bruke LibreNMS på Ubuntu 16.04

Overvåk enhetene dine ved å bruke LibreNMS på Ubuntu 16.04

Bruker du et annet system? LibreNMS er et fullverdig åpen kildekode-nettverksovervåkingssystem. Den bruker SNMP for å hente data fra forskjellige enheter. En variant

Stopp DHCP fra å endre resolv.conf

Stopp DHCP fra å endre resolv.conf

For DHCP-brukere kan det hende du trenger å redigere /etc/resolv.conf for å bruke andre navneservere. Deretter, etter en periode (eller etter en omstart av systemet)

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.

DDOS-angrep: en kort oversikt

DDOS-angrep: en kort oversikt

Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.

Har du noen gang lurt på hvordan hackere tjener penger?

Har du noen gang lurt på hvordan hackere tjener penger?

Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.

Evolusjon av datalagring – infografikk

Evolusjon av datalagring – infografikk

Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.

Funksjonaliteter til Big Data Reference Architecture Layers

Funksjonaliteter til Big Data Reference Architecture Layers

Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer