Transfer from Dreamhost

Rationale This blog previously existed on Dreamhost as a Wordpress site within a shared server hosting plan. This was useful for hosting this blog, but meant that I couldn’t do anything else with the website. Since I am trying to reduce reliance on US-based technology services, migrating this was a high value target as it would be a double-whammy: change web host from US-based servers open up a web server to host cloud service replacements Procedure Export Wordpress data from Dreamhost. Run Wordpress to Markdown conversion program (wordpress-export-to-markdown). Move converted files into Blog folder within Obsidian. Clean up Obsidian files, update frontmatter and remove export artefacts. Set up server with Hetzner. Server: Do usual admin (user setup, etc) Server: Set up file structure for subdomains. Hetzner: Create DNS zone records Server: Set up Caddy reverse proxy to handle subdomains Set up automated pipeline for converting Obsidian markdown files to blog posts using Hugo (more detail in the linked post!). Deploy static output from Hugo to server at “blog” subdomain. Change registrar nameservers for domain to point at Hetzner nameservers. Cancel Dreamhost hosting plan. Update domain name registrar to a local one instead of using Dreamhost. Discussion To be honest, I put this job off for a long time because it seemed overwhelming. I only managed by using Claude to draw up a runbook for the whole process, which definitely kept me organised. I ran into issues because of this runbook, so it wasn’t perfect, but it definitely brought me through the process in a digestible way. ...

22 April, 2026 · 2 min · 331 words · Niall O'Callaghan
Mastodon