Bloggen mit Pelican

Da der Raspberry jetzt schon mal am Netz hängt wegen Owncloud und ich dem einen oder anderen Kollegen versprochen hatte über die Erfahrungen zu berichten, bot sich an auch einen Blog auf dem Raspberry zu betreiben.

Anforderungen: Ich möchte die Artikel gerne "Wiki-Style" schreiben, also in einfachen Textfiles, die dann in HTML umgewandelt werden. Um mit den Ressourcen schonend umzugehen wollte ich eine Software, welche die Blogseiten einmal generiert und dann einfach auf dem Webserver ablegt. Das Ganze am liebsten in meiner Lieblingssprache Python. Und siehe da, es gibt mit Pelican tatsächlich genau so ein Tool.

Die Installation ist denkbar einfach:

sudo apt-get install python-pip
sudo pip install pelican
sudo pip install Markdown

Danach legt man sich am besten im Home ein Verzeichnis "blog" an führt dann aus:

pelican-quickstart

Das generiert die Verzeichnisstruktur. Jetzt kann man anfangen seinen ersten Blogeintrag zu schreiben. Dazu legt man im Folder "content" ein File "01_helloworld.md" an mit z.B. diesem Inhalt:

Title: Bloggen mit Pelican
Date: 2015-02-28 22:00
Category: Raspberry Pi
Tags: pelican, blog

Da der Raspberry jetzt schon mal online ist wegen Owncloud und ich dem einen oder anderen Kollegen ver...

Jetzt wieder ins Hauptverzeichnis und die Seiten generieren mit

pelican content

Um sich den Blog testweise anzuschauen navigiert man zum Output und startet einen Testserver:

cd output
python -m SimpleHTTPServer

Jetzt kann man sich das Ganze je nach Router-Konfiguration z.B. unter "http://raspberrypi:8000/" anschauen. Ist man mit dem Ergebnis zufrieden kopiert man den Blog einfach auf den Webserver. Dafür nehme ich folgende Befehle:

pelican content -s publishconf.py
sudo rm -r /var/www/blog
sudo cp -r output /var/www/blog
sudo chown -R www-data.www-data /var/www/blog

Der erste Befehl erzeugt den Blog mit der "Live"-Config. Die anderen Befehle kopieren die Webseiten in das Webserver-Verzeichnis und setzen die korrekten Rechte.

Die Webserverconfig unter /etc/nginx/sites-available/default muss natürlich noch entsprechend angepasst werden:

server {
        listen 80;
        server_name yourdomain.de;
        root /var/www/blog;
        location / {
             index index.htm index.html;
        }
}

Anschließend den Webserver einmal neu starten mit

sudo /etc/init.d/nginx restart

Für das Schreiben der Blogposts benutze ich den Editor Markdownpad. Er zeigt auf der rechten Seite bereits die Vorschau der Seite an.

Lasttest

Wem das Standardtheme nicht gefällt kann aus jeder Menge alternativer Themes wählen.

links

social