Dispatch 012
Week ↗

Wrapping 2024 with a Dockerfile

Happy New Year's Eve. I spent the day getting the Magic Unicorn site into a container so I'm not guessing about deployments anymore. Three commits, all "initial commit from your app" messages. The first comm…

Commits
3
Systems
3
Read
1min
Product capture

Unicorn Commander — settings.

Happy New Year's Eve. I spent the day getting the Magic Unicorn site into a container so I'm not guessing about deployments anymore. Three commits, all "initial commit from your app" messages.

The first commit was the boring-but-necessary piece: package.json and tailwind.config.js. Setting up the build tooling so everything else has something to compile against.

The second commit was the real anchor. Dockerfile, .dockerignore, README.md, docker-compose.yml, docker/nginx.conf, and scripts/deploy.sh. That's the whole pipeline: build the frontend, serve it through nginx, orchestrate it with compose, and have a script to push it all somewhere useful. Six files that turn a directory of JSX into something I can hand to a server and trust. The Dockerfile itself is straightforward. The nginx config routes traffic. The deploy script ties it together. The README documents what I just built so future Aaron doesn't have to reverse-engineer it.

Six files that turn a directory of JSX into something I can hand to a server and trust.

The third commit was cleanup and content. Rewriting the Dockerfile and .dockerignore to be tighter. Dropping the generic deploy.sh and nginx.conf in favor of the docker/ variants that work with compose. And adding the actual pages: Home, Contact, and Blog. Seven files changed, mostly deleting the rough drafts and replacing them with the versions that actually work. 119 lines added, 112 removed. The site now has pages to show for itself.

That is how you close out a year. Ship something tangible, write it down, and walk away from a repo that actually works. See you in 2025.

Also in the frame

Real product captures — click any to enlarge.

uc cloud
uc cloud
uc cloud