Dies ist die Quelle für meine persönliche Website unter https://parsiya.net.
Es wird mit Hugo und dem Hugo-Octopress Theme generiert. Ich habe das klassische Octopress-Theme auf Hugo portiert.
hugo new post/2018-11-23-post-name/index.markdown
(oder index.md
).ctrl+shift+b
in VS Code startet eine Aufgabe, die den Hugo-Watch-Server ausführt und ihn in einem Browser öffnet. Siehe .vscode/tasks.json.Die Website wird in einem AWS S3-Bucket gehostet. CloudFront bietet CDN und TLS (und Zertifikat). GitHub-Seiten sind ebenfalls beliebt (und kostenlos). Siehe meinen Blog-Beitrag „Automagically Deploying Websites with Custom Domains to GitHub Pages“.
Ich verwende eine benutzerdefinierte GitHub-Aktion. Siehe „deploy.yml“.
Ich habe s3deploy verwendet, um den Blog in AWS bereitzustellen. Die Konfiguration befindet sich in .s3deploy.yml. Dieses Beispiel eignet sich (mit ein wenig Modifikation) für die meisten statischen Websites.
Statische Ressourcen (Schriftarten, Bilder, CSS usw.) haben kein Ablaufdatum. Alles andere verwendet die GZIP-Komprimierung. Wenn eine Ressource aktualisiert wird, macht s3deploy ihren CloudFront-Cache ungültig.
Hinweis : Durch die Aktivierung gzip compression
für Keybase-Proofs (siehe static/keybase.txt) werden diese unterbrochen.
Verwenden Sie die Beispiel-IAM-Richtlinie von s3deploy. Zum Zeitpunkt des Verfassens dieses Artikels unterstützt AWS nicht die Adressierung separater CloudFront-Verteilungen mit ARNs (Amazon Resource Names), sodass der resultierende Schlüssel alle Verteilungen auflisten und ungültig machen kann.
Der Blog verwendete früher Travis CI. Siehe @archive/.travis.yml.
language:minimal
reduziert die Erstellungszeit um 20 Sekunden (im Vergleich zum Standardcontainer).AWS_ACCESS_KEY
und AWS_SECRET_ACCESS_KEY
. Diese werden von s3deploy verwendet.Informationen zur manuellen Bereitstellung finden Sie unter @archive/deploy.bat.