3 ms·
Due to being kind of on the poor side, using AWS, Azure or GCP for personal projects isn't entirely viable for me. I still do utilize some VPS vendors for when
by KronisLV 4y ago
Due to being kind of on the poor side, using AWS, Azure or GCP for personal projects isn't entirely viable for me. I still do utilize some VPS vendors for when I need a decent uptime, but most of the time it's just a GNU/Linux box that I have SSH access to and I configure everything else myself.
Most other things, I run in my homelab, which is just a few old computers repurposed to act as servers for whatever I might need (especially for storing larger amounts of data, e.g. backups), including things like acting as CI/CD nodes, or test environments etc.
I still write "cloud native" software (for example, 12 Factor Apps) because those make the portability of everything pretty well, as well as use something like Docker and some lightweight orchestration on top of it (like Docker Swarm or Hashicorp Nomad) because it's like having the ability to make configuration for what you need (ports, storage, memory/CPU limits, scheduling, restart policies etc.) rather easily and also version it, more easily than Ansible lets me (which I still use for configuration of the server nodes themselves). Basically like multi-node systemd, once could say.
I actually wrote about some of this a year back: https://blog.kronis.dev/articles/how-i-organize-my-docker-deployments-in-2021 https://blog.kronis.dev/articles/how-i-organize-my-docker-de...
Though since I've also moved over to using Apache as my ingress, for a few reasons: https://blog.kronis.dev/tutorials/how-and-why-to-use-apache-httpd-in-2022 https://blog.kronis.dev/tutorials/how-and-why-to-use-apache-...
Either way, it's nice that we still have the ability to base our workloads on open source solutions and learn about all of this stuff on consumer hardware (though certain configurations might be badly supported on choice OSes, like some BSD versions with driver support).
A few days ago I actually published a blog series on making a file and metadata storage solution that's based on open source technologies, which easily handled millions of documents: https://blog.kronis.dev/tutorials/1-4-pidgeot-a-system-for-millions-of-documents-the-data https://blog.kronis.dev/tutorials/1-4-pidgeot-a-system-for-m...