This is documentation about this site.
Blog engine
Writing workflow
See also: Blog Writing Flow in Git.
Content is edited in Markdown.
I do all my editing in Spacemacs,
with heavy use of Projectile
and Magit
(Spacemacs layers git
and project
).
The whole site, including theme files and content, are checked in Git for version control.
Previously, I used Vim and Tmux.
Hosting platform
Hosted in my house.
I have a FreeNAS box and I use FreeBSD jails to isolate and put up web hosting environments.
My publish.sh
script basically builds the site with hugo
and syncs the public/
directory to the jail over SSH with rsync
.
Large static files are hosted on a separate static HTTP server. It’s just another FreeBSD jail with apache24 serving a filesystem directory. This is to avoid commiting large binary files to Git, like videos or large archives I host for sharing.
I commit blog post images optimized for web in my site’s repository, because they’re optimized and I can take advantage of Hugo Page Bundles.
I use the HAProxy and ACME packages on my pfSense router for reverse proxying and SSL offloading.
My website is hosted on https://alexandre.deverteuil.net/
and static files are served at https://static.alexandre.deverteuil.net/
.
DNS
I use DigitalOcean for the deverteuil.net
domain.
In pfSense, I configured the Dynamic DNS client with a DigitalOcean API key to update my DNS A record with my residential DHCP IP address.