Jekyll auf Amazon CloudFront hosten


Heute nachmittag hab ich mal ausprobiert, wie man den eigenen Jekyll-Blog auf einem Amazon S3-Bucket hosten und mit Amazon CloudFront weltweit verteilen kann. Mein erster Eindruck: fast so einfach wie Schuhe anziehen.

Einrichten des S3-Buckets

Als erstes hab ich mich auf der Amazon Management Console eingeloggt und ein neues Bucket angelegt:

aws-s3-bucket-fuer-jekyll

Jetzt muss ich noch mit s3cmd mein AWS-Zugang konfigurieren. Dazu rufe ich folgendes Kommando auf und folge den Hinweisen auf dem Bildschirm:

s3cmd --configure

Im Prinzip muss man da nur seine Zugangsdaten zum Amazon Webservice angeben.

Hochladen der statischen Inhalte

Ich habe lokal meine statische Seite mit Jekyll generiert. Danach habe ich im Verzeichnis _site alle Dateien, die ich für die Seite brauche. Die kann ich jetzt auf mein vorher angelegtes Amazon S3-Bucket hochladen:

s3cmd sync --delete-removed _site/ s3://{bucketname}

Jetzt kann ich bereits meinen Blog auf dem S3-Bucket aufrufen: http://blog.kopis.de.s3-website-eu-west-1.amazonaws.com/

Einrichten von Amazon CloudFront

Als erstes muss ich eine Distribution anlegen, wieder in der Amazon Management Console:

aws-cloudfront-fuer-jekyll

Beim Einrichten wähle ich den Type download und mein S3-Bucket aus. Jetzt kann ich wieder meinen Blog aufrufen, diesmal auf dem CloudFront Content Delivery Network (CDN): http://d3ln3qjv5hffnc.cloudfront.net/

Einstellen der CNAMEs

Damit ich meine Daten unter eine besseren Domain aufrufen kann, muss ich noch einige Einstellungen im Domain Name Server meiner Domain kopis.de vornehmen. Ich möchte einen CNAME einrichten und die Daten in der CloudFront anschliessend über blog2.kopis.de aufrufen.

Das Einrichten eines CNAME Records ist aber so abhängig vom Hoster der Domain, dass ich euch nicht damit langweilen möchte. Als letzter Schritt bleibt dann eigentlich nur noch der Aufruf des Blogs bzw. das Setzen von Links auf die statischen Inhalte in der CloudFront.

Ich hoste dann meinen Blog unter blog.kopis.de, während die meisten Inhalte aber von blog2.kopis.de kommen. Das ganze könnt ihr auch für einen dynamischen Blog machen, der z.B. nur statische Inhalte wie CSS, Javascript und Bilder aus der CloudFront lädt. Da mein Blog mit Jekyll nur noch aus statischen Inhalten besteht, kann ich alle Inhalte aus der CloudFront bedienen. Ich brauche dann gar keinen eigenen Webspace mehr und könnte mein Hostingpaket auf die reine Domain abspecken.

Weitere Artikel

Unterschiedliche Sichtweisen

Vorbestellt: Sony Xperia XZ Premium

Giants Run 2017

Gelesen: SciFi Serie 'The Expanse'

Neue Tastatur: Pok3r Vortex RGB

New minecraft survival mod for 1.11.2

Änderungen beim Flug mit Quadkoptern

Ein paar Fotos

Nach den Crossfit Open

Crossfit Open WOD 17.5