GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie den Hugo Site Generator unter Ubuntu 18.04 LTS

Hugo ist ein kostenloses Open-Source-Framework, das in der Go-Sprache geschrieben ist und zum einfachen Erstellen von Websites verwendet werden kann. Es ist ein einfacher, schneller und sicherer statischer Site-Generator, Sie benötigen keine Datenbank, um ihn auszuführen. Hugo unterstützt unbegrenzte Inhaltstypen, Taxonomien, Menüs, dynamische API-gesteuerte Inhalte und mehr, alles ohne Plugins. Hugo verfügt über eine Vielzahl von Funktionen, darunter robustes Inhaltsmanagement, integrierte Vorlagen, Shortcodes, benutzerdefinierte Ausgaben, Mehrsprachigkeit und vieles mehr.

In diesem Tutorial lernen wir, wie man Hugo auf einem Ubuntu 18.04 LTS-Server installiert.

Anforderungen

  • Ein Server mit Ubuntu 18.04.
  • Eine statische IP-Adresse 136.243.240.39 ist auf Ihrem Server konfiguriert.
  • Ein Root-Passwort wird für Ihren Server eingerichtet.

Erste Schritte

Bevor Sie beginnen, müssen Sie Ihr System mit der neuesten Version aktualisieren. Sie können dies tun, indem Sie den folgenden Befehl ausführen:

apt-get update -y
apt-get upgrade -y

Sobald Ihr Server aktualisiert ist, starten Sie Ihren Server neu, um die Änderungen zu übernehmen.

Installieren Sie Hugo

Standardmäßig ist die neueste Version von Hugo nicht im Standard-Repository von Ubuntu 18.04 verfügbar. Sie müssen es also aus dem Git-Repository herunterladen. Sie können es mit dem folgenden Befehl herunterladen:

wget https://github.com/gohugoio/hugo/releases/download/v0.58.2/hugo_0.58.2_Linux-64bit.deb

Sobald der Download abgeschlossen ist, installieren Sie Hugo mit dem folgenden Befehl:

dpkg -i hugo_0.58.2_Linux-64bit.deb

Wenn Sie einen Abhängigkeitsfehler erhalten, führen Sie den folgenden Befehl aus, um die Abhängigkeit aufzulösen:

apt-get install -f

Als nächstes können Sie die Hugo-Version mit dem folgenden Befehl überprüfen:

hugo version

Sie sollten die folgende Ausgabe erhalten:

Hugo Static Site Generator v0.58.2-253E5FDC linux/amd64 BuildDate: 2019-09-13T08:05:59Z

Sie können auch eine Liste der mit Hugo verfügbaren Optionen anzeigen, indem Sie den folgenden Befehl ausführen:

hugo --help

Sie sollten die folgende Ausgabe erhalten:

hugo is the main command, used to build your Hugo site.

Hugo is a Fast and Flexible Static Site Generator
built with love by spf13 and friends in Go.

Complete documentation is available at http://gohugo.io/.

Usage:
  hugo [flags]
  hugo [command]

Available Commands:
  config      Print the site configuration
  convert     Convert your content to different formats
  deploy      Deploy your site to a Cloud provider.
  env         Print Hugo version and environment info
  gen         A collection of several useful generators.
  help        Help about any command
  import      Import your site from others.
  list        Listing out various types of content
  mod         Various Hugo Modules helpers.
  new         Create new content for your site
  server      A high performance webserver
  version     Print the version number of Hugo

Flags:
  -b, --baseURL string         hostname (and path) to the root, e.g. http://spf13.com/
  -D, --buildDrafts            include content marked as draft
  -E, --buildExpired           include expired content
  -F, --buildFuture            include content with publishdate in the future
      --cacheDir string        filesystem path to cache directory. Defaults: $TMPDIR/hugo_cache/
      --cleanDestinationDir    remove files from destination not found in static directories
      --config string          config file (default is path/config.yaml|json|toml)
      --configDir string       config dir (default "config")
  -c, --contentDir string      filesystem path to content directory
      --debug                  debug output
  -d, --destination string     filesystem path to write files to
      --disableKinds strings   disable different kind of pages (home, RSS etc.)
      --enableGitInfo          add Git revision, date and author info to the pages
  -e, --environment string     build environment
      --forceSyncStatic        copy all files when static is changed.
      --gc                     enable to run some cleanup tasks (remove unused cache files) after the build
  -h, --help                   help for hugo
      --i18n-warnings          print missing translations
      --ignoreCache            ignores the cache directory
      --ignoreVendor           ignores any _vendor directory
  -l, --layoutDir string       filesystem path to layout directory
      --log                    enable Logging
      --logFile string         log File path (if set, logging enabled automatically)
      --minify                 minify any supported output format (HTML, XML etc.)
      --noChmod                don't sync permission mode of files
      --noTimes                don't sync modification time of files
      --path-warnings          print warnings on duplicate target paths etc.
      --quiet                  build in quiet mode
      --renderToMemory         render to memory (only useful for benchmark testing)
  -s, --source string          filesystem path to read files relative from
      --templateMetrics        display metrics about template executions
      --templateMetricsHints   calculate some improvement hints when combined with --templateMetrics
  -t, --theme strings          themes to use (located in /themes/THEMENAME/)
      --themesDir string       filesystem path to themes directory
      --trace file             write trace to file (not useful in general)
  -v, --verbose                verbose output
      --verboseLog             verbose logging
  -w, --watch                  watch filesystem for changes and recreate as needed

Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Erstelle eine Website mit Hugo

Hugo ist jetzt installiert, es ist an der Zeit, eine Website und Inhalte mit Hugo zu erstellen.

Sie können eine neue Website namens test.example.com erstellen, indem Sie den folgenden Befehl ausführen:

hugo new site test.example.com

Sobald die Website erfolgreich erstellt wurde, sollten Sie die folgende Ausgabe erhalten:

Congratulations! Your new Hugo site is created in /root/test.example.com.

Just a few more steps and you're ready to go:

1. Download a theme into the same-named folder.
   Choose a theme from https://themes.gohugo.io/, or
   create your own with the "hugo new theme " command.
2. Perhaps you want to add some content. You can add single files
   with "hugo new /.".
3. Start the built-in live server via "hugo server".

Visit https://gohugo.io/ for quickstart guide and full documentation.

Sie können auch alle unter Ihrer Website erstellten Dateien mit dem folgenden Befehl auflisten:

ls test.example.com/

Sie sollten die folgende Ausgabe sehen:

archetypes  config.toml  content  data  layouts  static  themes

Erstellen Sie eine About-Seite und einen Blog-Post

Wechseln Sie nun in das Verzeichnis Ihrer Website und erstellen Sie mit dem folgenden Befehl eine about.md-Seite:

cd test.example.com
hugo new about.md

Sie sollten die folgende Ausgabe sehen:

/root/test.example.com/content/about.md created

Öffnen Sie als Nächstes eine about.md-Datei und fügen Sie Inhalte hinzu:

nano content/about.md

Nehmen Sie die folgenden Änderungen vor:

---
title: "About"
date: 2019-09-10T06:57:08Z
draft: false
---

I am hitesh jethva working as a technical writer.

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Erstellen Sie dann Ihren ersten Beitrag mit dem folgenden Befehl:

hugo new post/first.md

Sie sollten die folgende Ausgabe sehen:

/root/test.example.com/content/post/first.md created

Als nächstes öffnen Sie die Datei first.md und fügen etwas Inhalt hinzu:

nano content/post/first.md

Nehmen Sie die folgenden Änderungen vor:

---
title: "First"
date: 2019-09-10T06:58:51Z
draft: false
---

## This is my first blog post

Hi How are you!

Richten Sie Ihr erstes Design ein

Ihre About-Seite und Ihr Blog-Beitrag sind jetzt erstellt, es ist an der Zeit, Ihr erstes Design einzurichten.

Wechseln Sie zunächst in das Verzeichnis themes und laden Sie das hugo-strata-theme mit dem folgenden Befehl herunter:

cd themes
wget https://github.com/digitalcraftsman/hugo-strata-theme/archive/master.zip

Extrahieren Sie nach dem Herunterladen das heruntergeladene Design mit dem folgenden Befehl:

unzip master.zip

Als nächstes benennen Sie das extrahierte Design wie unten gezeigt um:

mv hugo-strata-theme-master hugo-strata-theme

Als Nächstes müssen Sie den Inhalt der Beispieldatei config.toml von themes/hugo-strata-theme in die Datei config.toml Ihrer Site kopieren, die sich unter /root/test.example.com/config.toml befindet.

Sie können dies mit dem folgenden Befehl tun:

cat hugo-strata-theme/exampleSite/config.toml > ../config.toml

Aktualisieren Sie als Nächstes die baseurl-Variable und fügen Sie auch Ihre neue About-Seite in die Navigation dieses Themas in der Datei config.toml ein, wie unten gezeigt:

nano ../config.toml

Aktualisieren Sie die Basis-URL wie unten gezeigt:

baseurl = "/"

Fügen Sie außerdem die folgenden Zeilen hinzu, um Ihre neue About-Seite einzuschließen:

 [[menu.main]]
  name = "About"
  url  = "about"
  weight = 5

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Als Nächstes müssen Sie auch Ihr Landingpage-Layout mit dem Template-Layout des Themes aktualisieren, das sich unter themes/hugo-strata-theme/layouts/index.html befindet zu test.example.com/layouts/index.html :

nano /root/test.example.com/layouts/index.html

Fügen Sie den folgenden Inhalt hinzu:

{{ define "main" }}
        {{ if not .Site.Params.about.hide }}
                {{ partial "about" . }}
        {{ end }}

        {{ if not .Site.Params.portfolio.hide }}
                {{ partial "portfolio" . }}
        {{ end }}

        {{ if not .Site.Params.recentposts.hide }}
                {{ partial "recent-posts" . }}
        {{ end }}

        {{ if not .Site.Params.contact.hide }}
                {{ partial "contact" . }}
        {{ end }}
{{ end }}

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Erstellen Sie Ihre Website

Ihr Design ist jetzt für Ihre Website konfiguriert. Es ist Zeit, Ihre Website zu erstellen. Wechseln Sie dazu in das Verzeichnis Ihrer Website und erstellen Sie die Website mit dem folgenden Befehl:

cd /root/test.example.com
hugo

Sie sollten die folgende Ausgabe sehen:

                   | EN  
+------------------+----+
  Pages            | 17  
  Paginator pages  |  0  
  Non-page files   |  0  
  Static files     | 26  
  Processed images |  0  
  Aliases          |  5  
  Sitemaps         |  1  
  Cleaned          |  0  

Total in 18 ms

Starten Sie nun Ihren Hugo-Server und binden Sie ihn mit Ihrer Server-IP-Adresse, indem Sie den folgenden Befehl ausführen:

hugo server --bind=0.0.0.0 --baseUrl=http://136.243.240.39 -D -F

Sobald der Server erfolgreich gestartet wurde, sollten Sie die folgende Ausgabe sehen:

                   | EN  
+------------------+----+
  Pages            | 17  
  Paginator pages  |  0  
  Non-page files   |  0  
  Static files     | 26  
  Processed images |  0  
  Aliases          |  5  
  Sitemaps         |  1  
  Cleaned          |  0  

Total in 28 ms
Watching for changes in /root/test.example.com/{content,data,layouts,static,themes}
Watching for config changes in /root/test.example.com/config.toml
Serving pages from memory
Running in Fast Render Mode. For full rebuilds on change: hugo server --disableFastRender
Web Server is available at http://136.243.240.39:1313/ (bind address 0.0.0.0)
Press Ctrl+C to stop

Sobald Sie fertig sind, können Sie mit der Hugo-Weboberfläche fortfahren.

Zugriff auf Hugo-Server

Ihr Hugo-Server ist jetzt gestartet und lauscht auf Port 1313. Öffnen Sie als Nächstes Ihren Webbrowser und geben Sie die URL http://136.243.240.39:1313 ein. Sie werden wie unten gezeigt zu Ihrem Hugo-Server-Dashboard weitergeleitet:

Klicken Sie nun auf Über im linken Bereich. Sie sollten Ihre About-Seite im folgenden Bild sehen:

Klicken Sie nun auf den Blog Schaltfläche im linken Bereich. Sie sollten Ihren Blogbeitrag im folgenden Bild sehen:

Schlussfolgerung

Im obigen Tutorial haben wir gelernt, wie man den Hugo-Server auf dem Ubuntu 18.04-Server installiert. Wir haben auch gelernt, wie man mit Hugo eine Seite mit About-Seite und Thema erstellt. Weitere Informationen zu Hugo finden Sie in der offiziellen Hugo-Dokumentation unter Hugo Doc. Fühlen Sie sich frei, mich zu fragen, wenn Sie Fragen haben.


Ubuntu
  1. So installieren Sie Docker unter Ubuntu 22.04 / 20.04 LTS

  2. So installieren Sie PlayOnLinux auf Ubuntu 20.04 LTS

  3. So installieren Sie MariaDB in Ubuntu 20.04 LTS

  4. So installieren Sie Ansible unter Ubuntu 20.04 LTS / 21.04

  5. So installieren Sie Minikube unter Ubuntu 20.04 LTS / 21.04

So installieren Sie Ubuntu Server 18.04 LTS

So installieren Sie den Hugo-Website-Generator unter Ubuntu 20.04

So installieren Sie Go unter Ubuntu 22.04 LTS

So installieren Sie Go unter Ubuntu 18.04 LTS

So installieren Sie Go unter Ubuntu 20.04 LTS

So installieren Sie Hugo unter Ubuntu 20.04 LTS