Digital Wrenching

Another upcoming trip, another technical update. In 2018, before Trinity Site, I migrated this site from its humble beginnings on Tumblr to WordPress. I hosted it and the mapping database together on a small AWS Lightsail instance I named Alfa, where it has been running (mostly without upgrades) ever since.

When I joined Cloudflare in 2021, we were fixin’ to head out on The Backtrack. I started stealing the office supplies for better security, faster caching/delivery, and a better integration with the location database. But Alfa remained the tiny home for all these pieces, slowly collecting its digital cobwebs.

Well, as this humble blog has grown, I was hitting limits again. The original setup on Alfa was as rushed (and thus undocumented) as it was small. I’m pretty sure I could have recreated it again if I had to… but I never had a way to set up a good development environment. So I mostly just yolo’d stuff in production, like a professional.

As always, this site’s secondary purpose is to tinker with tools my teams use so that I can better understand the landscape from a technical point of view. So let’s take a big, silly swing. Route Not Found still works the same way:

s/alfa/bumbles/

But it is now hosted on a newer, larger Lightsail instance I named Bumbles … as a Docker Compose stack of five containers. Because everything is in containers now. Duhh.

  1. Custom-ish PostGIS container that ships PostgreSQL and the PostGIS extension together, with custom database init script
  2. Stock PostgREST container to take calls from the Location Service API and make them into PSQL database queries
  3. Very customized PHP7/Apache image that preconfigures everything WordPress needs to execute and manage media, matching Alfa’s configuration
  4. Stock MariaDB container for WordPress to use as a content database
  5. Stock Cloudflared container to host a tunnels backhaul so Cloudflare Workers can access PostgREST

Advantages:

  • I can spin up and destroy development servers as I need them, in just a few minutes.
  • I could move the whole thing to a server in my apartment to avoid AWS fees.
  • I could easily route WordPress traffic through the CF tunnel, too, adding a layer of security.
  • This would make it easier to start updating PHP and database service versions, which are all … very old.

Disadvantages:

  • Shit, now I use Docker for something.
  • OEaaS — Over Engineering as a Service. Or, put another way, I think I CCDC’d myself.

But it was kinda fun. Because I’m a nerd. And now I’m not worried the whole thing might irreparably implode one day if I sneeze on a terminal window. Guess I should get back to working on the Mystery Wagon now, though.

For those curious: tsmith512/rnf-deploy

Borrowing the Office Supplies

As was alluded to at the end of the last little loop, I’ve started a new job! And we make some pretty cool internet technology. So between wanting to test-drive some of our platform and knowing that this particular engine was overdue for a rebuild anyway, I’ve rearchitected the blog. Again.

The WordPress part is largely unchanged except that I’ve replaced the Mapbox library with one that’s actually still supported. And much better! But the entire delivery infrastructure and location reporting stack is totally new. I wrote about it over on the work blog.

The Internet is for Doing Roadtrips

I presented on this project at work’s August Test Kitchen, a monthly half-hour of lightning talks and presentations on everything from client work to side projects to non-technical interests. For a slide deck I put together overnight, I’m pretty pleased with how it came out. Buckle in for a rapid-fire tour of the ecosystem that powers this blog from a technical perspective.

Hello World

A major change for the Travelogue! After some deeply frustrating issues during both Southwest Overland and OAT West, I’ve decided to pull the travel blog off of Tumblr where I originally built it. I’ve hastily relaunched as a self-hosted WordPress website with a lot of code I’m going to have to rewrite later… I’ve only done light customizations on theming/design so far, but I can reuse the bulk of the location-aware/mapping code I’d written before. And despite the rush, I’ve even been able to improve upon some of it.

Because Tumblr is dead to me.

Thankfully, I was able to do a complete migration and retain all of my content. I feel good knowing that I have all this content on an installation that I have control over. It’s unfortunate that some of the formatting has been lost. Some of that was Tumblr’s fault (because a little over a year ago, its Android application just stopped differentiating post formats) and some of it was the import and updates on the WordPress end.

Ultimately, I think I’ll be able to create better content here with far better options for media. Also one of the first things I built out was an ability to group past trip content into a category which hooks up to the Location Tracker so I can finally link to entire trips worth of content, starting at the beginning!

From OAT East, which I forgot to write much about…

Site code is up on GitHub, and I’ll probably write about this experiment over on my blog at some point. In the meantime, I gotta start getting ready for our next adventure! It starts in two days…

Location-tracking Roadtrip Blog | Taylor Smith

If you’re curious about the technologies that power the Traveolgue, I wrote about the project over at my personal blog. Check it out!

Travelogue 2015: The Pacific Coast Roadtrip

image

I’d promised to write a book of our adventures when I got back. How hard could it be? As it turns out, you lovely lot who had so energetically followed our adventures made do with a very distracted narrator. Whose writing required an arduous editing process… Also, I procrastinate. But just in time for the holidays (well, the second year’s worth of holidays, anyway), I published Travelogue 2015: The Pacific Coast Roadtrip.

Thank you all for coming along for the ride with us last year. If you’d like a copy of the book PDF, reach out to one of us and we’ll get it to you.