Hugo - statische Webseiten blitzschnell generieren

Hugo

Der schnellste Static-Site-Generator der Welt – für Blogs, Dokumentationen und Websites ohne Datenbank.

Was ist Hugo?

Hugo ist ein in Go geschriebener Static-Site-Generator, der Markdown-Inhalte in vollständige HTML-Websites kompiliert – in der Regel in Millisekunden. Er eignet sich hervorragend für Blogs, Portfolios, Projektdokumentationen und Landingpages. Hugo unterstützt Themes, Taxonomien, Mehrsprachigkeit und Live-Reload während der Entwicklung. Im Docker-Betrieb lässt sich Hugo sowohl als lokaler Dev-Server als auch als Build-Step in einer CI-Pipeline einsetzen.

Voraussetzungen

  • Docker oder Docker Compose
  • Ein bestehendes Hugo-Projekt oder ein Theme als Startpunkt
  • Optional: Git für Theme-Submodule

Compose-Beispiel

services:
  hugo:
    image: hugomods/hugo:exts
    container_name: hugo
    restart: unless-stopped
    ports:
      - "1313:1313"
    volumes:
      - ./site:/src
    working_dir: /src
    command: server --bind 0.0.0.0 --buildDrafts
    environment:
      - TZ=Europe/Berlin

Hinweise

  • Das exts-Tag von hugomods bringt PostCSS, Dart Sass und weitere Erweiterungen mit.
  • Mit --buildDrafts werden auch Entwurfsartikel im Dev-Server angezeigt.
  • Für reine Build-Pipelines kann der Container mit hugo --minify aufgerufen werden, ohne Port.
  • Das generierte public/-Verzeichnis lässt sich direkt per Nginx oder Caddy ausliefern.