2026 01 06: OHJE: Miten julkaiset muutokset tuotantoon
Sivuston julkaisu Hugosta tuotantoon
Tämä on oma muistio siitä, miten kehityksessä oleva Hugo-projekti julkaistaan staattisena HTML-sivustona web-palvelimen käyttöön.
Julkaisun perusidea:
- Kirjaudu palvelimelle SSH:lla
- Generoi sivusto komennolla
hugo - Peilaa valmis kansio
public/nginxin näyttämään hakemistoon rsyncillä - Poistu palvelimelta.
1) Sivuston generointi
cd ~/sites/diary
hugo
Mitä komento hugo tekee
Lukee projektin lähdetiedostot:
-
content/
-
layouts/
-
static/
-
asetustiedosto config.toml
-
Rakentaa niistä valmiit staattiset sivut kansioon: public/
Tämä vastaa täsmälleen sitä sisältöä, jonka selain lopulta näyttää.
2) Tiedostojen siirto tuotantohakemistoon
rsync -a --delete public/ /var/www/diary
Parametrien merkitys
- rsync: ohjelma tiedostojen synkronointiin
- -a (archive): kopioi:
- alikansiot
- aikaleimat
- tiedostojen rakenteen
- –delete tekee kohteesta tarkan peilin: jos tiedosto on poistettu projektista, se poistuu myös /var/www/diary
public/ → /var/www/diary siirtää juuri sen version, joka äsken generoitiin.
3) Palautus toiselle koneelle
Jos palvelin hajoaa, sama kehitysversio saadaan pystyyn näin:
git clone git@github.com:USERNAME/diary.git
cd diary
hugo
rsync -a --delete public/ /var/www/diary