Einführung
Jekyll ist ein statischer Site-Generator, der einige der Vorteile eines Content Management Systems (CMS) bietet und gleichzeitig die Leistungs- und Sicherheitsprobleme vermeidet, die durch solche datenbankgesteuerten Sites verursacht werden. Es ist "blog-aware" und enthält spezielle Funktionen für den Umgang mit datumsorganisierten Inhalten, obwohl seine Nützlichkeit nicht auf Blogging-Sites beschränkt ist. Jekyll eignet sich besonders für Personen, die offline arbeiten, für die Inhaltspflege eher einfache Editoren als Webformulare verwenden und die Versionskontrolle verwenden möchten, um Änderungen an ihrer Website nachzuverfolgen.
In diesem Tutorial installieren wir eine Jekyll 3.7.3-Entwicklungssite unter Ubuntu 16.04. In späteren Lernprogrammen werden wir den hier generierten Inhalt untersuchen, eine statische Site auf demselben Server veröffentlichen und schließlich an einem Produktionsstandort bereitstellen.
Voraussetzungen
Um diesem Tutorial zu folgen, benötigen Sie:
-
* Ein Ubuntu 16.04-Server mit einem Benutzer ohne Root-Rechte mit sudo-Rechten *: Weitere Informationen zum Einrichten eines Benutzers mit diesen Rechten finden Sie unter https://www.digitalocean.com/community/tutorials/initial-server- setup-with-ubuntu-16-04 [Erstes Server-Setup mit Ubuntu 16.04].
Sobald Sie diese Voraussetzung erfüllt haben, können Sie Jekyll und seine Abhängigkeiten installieren.
Schritt 1 - Jekyll installieren
Zunächst aktualisieren wir unsere Paketliste, um sicherzustellen, dass wir die neuesten Informationen zu den neuesten Versionen von Paketen und deren Abhängigkeiten haben:
sudo apt-get update
Dann installieren wir Ruby und seine Entwicklungsbibliotheken sowie "+ make " und " build-essential +", damit die Bibliotheken von Jekyll nach der Installation von Jekyll kompiliert werden:
sudo apt-get install ruby ruby-dev make build-essential
Wenn dies abgeschlossen ist, werden wir Ihrer + .bashrc
-Datei zwei Zeilen hinzufügen, um Rubys` + gem`-Paketmanager anzuweisen, Edelsteine im Home-Ordner unseres Benutzers abzulegen. Dies vermeidet Komplikationen, die bei systemweiten Installationen auftreten können, und fügt den lokalen Befehl "+ jekyll " dem " PATH +" des Benutzers hinzu.
Öffnen Sie "+ .bashrc +", indem Sie Folgendes eingeben:
nano .bashrc
Fügen Sie am Ende der Datei die folgenden Zeilen hinzu:
# Ruby exports
export GEM_HOME=$HOME/gems
export PATH=$HOME/gems/bin:$PATH
Speichern und schließen Sie die Datei. Führen Sie Folgendes aus, um die Exporte zu aktivieren:
source ~/.bashrc
Danach installieren wir Jekyll selbst und Bundler, der die Gem-Abhängigkeiten verwaltet, mit "+ gem +":
gem install jekyll bundler
Als Nächstes stellen wir sicher, dass unsere Firewall-Einstellungen den Datenverkehr zum und vom Jekyll-Entwicklungswebserver zulassen.
Schritt 2 - Öffnen der Firewall
Zunächst überprüfen wir den Firewall-Status, um festzustellen, ob er aktiviert ist. In diesem Fall stellen wir sicher, dass der Datenverkehr zu unserer Website zulässig ist, damit wir unsere Entwicklungssite in einem Webbrowser anzeigen können.
sudo ufw status
In diesem Fall ist nur SSH erlaubt durch:
OutputStatus: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Möglicherweise gibt es andere Regeln oder gar keine Firewall-Regeln. Da in diesem Fall nur SSH-Datenverkehr zulässig ist, müssen wir Port 4000, den Standardport für den Jekyll-Entwicklungsserver, öffnen:
sudo ufw allow 4000
Überprüfen wir den Status noch einmal:
sudo ufw status
Jetzt sehen unsere Firewall-Regeln so aus:
OutputTo Action From
-- ------ ----
OpenSSH ALLOW Anywhere
4000 ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
4000 (v6) ALLOW Anywhere (v6)
Wenn die Software installiert und der erforderliche Port geöffnet ist, können Sie die Entwicklungssite erstellen.
Schritt 3 - Erstellen einer neuen Entwicklungssite
In unserem Ausgangsverzeichnis verwenden wir den Befehl "+ new " von Jekyll, um ein Gerüst für eine Site in einem Unterverzeichnis mit dem Namen " www +" zu erstellen:
cd ~
jekyll new
Der Befehl + jekyll new +
startet + bundle install +
, um die erforderlichen Abhängigkeiten zu installieren, und installiert automatisch ein Design mit dem Namen Minima. Nach erfolgreicher Installation sollte die Ausgabe folgendermaßen aussehen:
OutputNew jekyll site installed in /home//www.
Jekylls Befehl + new +
erstellt die folgenden Verzeichnisse und Dateien:
...
├── 404.html
├── about.md
├── _config.yml
├── Gemfile
├── Gemfile.lock
├── index.md
├── _posts
│ └── 2018-03-19-welcome-to-jekyll.markdown
└── _site
Dies sind nicht die eigentlichen Website-Dateien. Dies sind die Quelldateien, mit denen Jekyll die statische Site erstellt. Jekyll verwendet bestimmte Namen, Namensmuster und Verzeichnisstrukturen, um die verschiedenen Inhaltsquellen zu analysieren und zu einer statischen Site zusammenzufassen. Es ist wichtig, die vorhandene Struktur zu verwenden und die Namenskonventionen von Jekyll zu befolgen, wenn Sie neue Posts und Seiten hinzufügen.
Schritt 4 - Starten von Jekylls Webserver
Der integrierte, kompakte Webserver von Jekyll unterstützt die Website-Entwicklung, indem er die Dateien im Verzeichnis überwacht und die statische Website bei jeder Änderung automatisch neu erstellt. Da wir auf einem Remote-Server arbeiten, geben wir die Host-Adresse an, um die Site von unserem lokalen Computer aus zu durchsuchen. Wenn Sie auf einem lokalen Computer arbeiten, können Sie "+ jekyll serve " ohne die Hosteinstellung ausführen und eine Verbindung mit " http: // localhost: 4000 +" herstellen.
cd ~/www
jekyll serve --host=
Output of jekyll serverConfiguration file: /home//www/_config.yml
Source: /home//www
Destination: /home//www/_site
Incremental build: disabled. Enable with --incremental
Generating...
done in 0.645 seconds.
Auto-regeneration: enabled for '/home//www'
Server address:
Server running... press ctrl-c to stop.
Als wir "+ jekyll serve " aufriefen, analysierte Jekyll die Konfigurations- und Inhaltsdateien in ein neues Verzeichnis, " _site ", und begann, den Inhalt in diesem " _site +" - Ordner bereitzustellen:
...
├── 404.html
├── about.md
├── _config.yml
├── Gemfile
├── Gemfile.lock
├── index.md
├── _posts
│ └── 2018-03-19-welcome-to-jekyll.markdown
Außerdem wurde das aktuelle Verzeichnis "+ www " auf Änderungen überprüft. Sobald eine Änderung an einem Beitrag oder einer Seite gespeichert wird, wird die statische Site automatisch neu erstellt. Daher ist es wichtig, keine Änderungen direkt an Dateien im Ordner " _site +" vorzunehmen.
Wenn wir dieses Terminal geöffnet lassen, während der Entwicklungsserver bei der Arbeit an unserer Site im Vordergrund ausgeführt wird, erhalten wir sofortiges Feedback, wenn wir Seiten und Beiträge hinzufügen und Inhalte ändern.
Die Seite ist jetzt verfügbar. In einem Webbrowser können wir ihn unter der Serveradresse und dem Port aufrufen, die in der Ausgabe von "+ jekyll serve +" angegeben sind:
Bild: http: //assets.digitalocean.com/articles/jekyll-1604/jekyll_home_update.png [Screenshot der Jekyll-Homepage]
Fazit
In diesem Tutorial haben wir Jekyll installiert und eine Entwicklungssite mit einigen automatisch generierten Inhalten erstellt. In unserem next guide werden wir diesen Inhalt untersuchen, um zu veranschaulichen, wie Jekyll die Quelldateien in eine statische Site umwandelt und die Entscheidungen über unsere Konfigurationseinstellungen.