This post brought to you by hours of lofi hiphop.
Todays theme is Dark Techno.
I want to talk about Docker.
I’m old school in a lot of ways. I spend most of my time on the command line, (heck, I consume my lofi mixes via mpv and youtubedl.) I’ve never gotten into flatpak, or snap, or appimages. They have their place, and I’ve used them if the need arose, but for the most part I stick to a full download and install approach. I don’t really like things like pip, gem, npm, cargo, etc either because I quickly feel like I’m losing control over my system as it fills with many and varied alternative package managers. I don’t know how reasonable that is, but it’s how I feel.
It was a surprise to me then, taking in the past paragraph, how much I enjoyed getting to grips with docker. For those of you unaware docker is software that lets you run other software in containers. Meaning you don’t have to worry about dependencies, setup, conflicts in libraries. You pull an image, run it, and boom. A working install of whatever it was you required. There are MILLIONS of docker images you can interact with, in millions of different ways and they all work SO well!
I started my approach to docker using my traditional do it all by hand approach. It worked, it was nice, but I kept running into weird issues where THIS thing worked, but that one didn’t. None of the online guides are consistent in HOW they do things, because why would they be? You have choices! This is a good thing, but I’m no expert, and although I sorta cobbled things together I felt like I could do BETTER.
The first thing I found was the self hosting handbook. It’s amazing, a work of art. As a starting place I can’t recommend it enough. Really got me thinking, and figuring stuff out nicely. The only issue was adding new things. Figuring out what needed what to work was not that hard, but I knew there had to be MORE.
The second thing I found was dockstarter. Which is so nice. The documentation is a little lacking, but in a way that made sense. They described how to use their software, if you want to use the various images they offer you have to go look at the work put in to the documentation they offered. It’s a little frustrating to go hunt stuff down, and then adapt it to work with the workflow dockstarter has put in place, but once you have it, you have it. Everything works great with this setup, and I’m really quite happy with it. I even managed to add a few things extra without much complication, so here’s where i’m settled for now.
However, there’s more! For example, unraid. Which seems to be an entire OS basically MADE for docker. Although I’ve not looked into it much yet, I’m curious.
Also, yunohost which also looks fantastic, and is another thing I’d like a better look at at some point.
For now though, I’m pretty happy. I have nextcloud in a docker container, transmissionVPN, miniflux, and various things meant to help the infrastructure, all hosted on my laptop, all reachable via simple subdomains.
Docker is great. Why did I wait so long to look at it?