Contents
Courtesy of lovely Fosstodon folks, I was made aware of Racknerd. I decided to bite and pay for a deal: $15/year for 1 GB memory and 1vCPU along with 25 GB SSD. All of this is sufficient for me. I would really have liked 2vCPU, but the next tier was $28/year and I simply didn’t want to pay that.
The VPS is also pre-set with 1 GB of swap memory – strange considering more established hosts recommend not setting up swap on SSD storage. That is to say any one-off memory needs will tide over just fine.
Migration.
I took this migration opportunity to simplify my setup:
- Retain: Caddy.
- Retain:
docker
anddocker-compose
. - New: Store docker compose instructions in a flat file structure in the home directory:
~/srv/
. - New: Store backups in a flat file directory under my home dir:
~/backups/
. - New: Makefile that runs docker compose commands on demand, including for making backups.
- Change: Symbolic link for
Caddyfile
at~/srv/Caddyfile
. - Change: No more incremental, encrypted backups. So much complexity and opacity.
- Removed: Backblaze B2.
- Removed: restic.
- Removed: direnv
Here’s what it looks like now:
~
|-- srv
|-- |-- Caddyfile
|-- |-- Makefile
|-- |-- miniflux.yml
|-- |-- reddit.yml
|-- |-- linkding.yml
|-- backups
# Refer to the Caddy docs for more information:
# https://caddyserver.com/docs/caddyfile
read.domain.tld {
reverse_proxy localhost:3050
}
ld.domain.tld {
reverse_proxy localhost:4010
}
reddit.domain.tld {
reverse_proxy localhost:6400
}
miniflux-restart:
docker-compose -f miniflux.yml restart
miniflux-stop:
docker-compose -f miniflux.yml stop
miniflux-up:
docker-compose -f miniflux.yml up -d
miniflux-backup:
docker-compose -f miniflux.yml exec db sh -c 'pg_dump --username miniflux --dbname miniflux -Fc' > ~/backups/`date +%Y%m%d"_"%H%M%S`_miniflux_pg_dump_db.dump
miniflux-shell:
docker exec -it srv_miniflux_app_1 sh
miniflux-logs:
docker-compose -f miniflux.yml logs -f
Next steps:
- Repeat for each self-hosted app.
- ???
- Profit.
I looked at some projects that would overlay my docker command line requirements, but ended up with a Makefile
instead. I also considered making a simple Python script… but really?!?! Really?!?!
Of course not.
Go away.
I want to not look at the VPS as much as I can. Same goes for code now and then.
Finances and other resources.
Down from ~₹4300/year to ~₹1130/year. A 73% reduction (!). Happy, obviously.
Server usage sits at about 450 MB of ~980MB. Load average for the last 15 minutes is 0.13.
All sounds good to me.
Next steps.
A zsh
alias on my MacBook that logs into the server, runs a backup, and downloads it somewhere locally. The idea being that it will be included in the next Time Machine backup.
Moving forward, I will consider this backup strategy sufficient:
- 1 on-disk on the VPS.
- 1 on my laptop.
- 1 (and more via history) on my external SSD reserved just for Time Machine backups.
Because let’s be honest – I am sick of how expensive self-hosting is on my mind.
Photo by Taylor Vick on Unsplash.