Should I be learning docker compose instead of relying on dockStarter to manage my containers? I got portainer up, should I just use that to manage my stack?
I’m committed this summer to finally learning docker. I’m on day 3 and the last puzzle piece is being able to access qbittorrent locally while running the container through the vpn.
I recommend Dockge over Portainer if you want a web admin panel. https://github.com/louislam/dockge
It’s basically docker compose in a website, and you can just decide one day to turn it off and use the compose files directly. No proprietary databases or other weirdness.
It doesn’t seem to have the webhooks functionality that Portainer has though.
That’s the one I use exactly because of that. I know compose, not going to learn another program to do the same, just want something that gives me an easier way to edit them than sshing into my box and using an editor.
It also works in the “other” direction- if you’re already using compose files, you can point dockge to their existing location (stacks directory) and it will scan and pick them up!
If you’re learning in any kind of professional capacity, you may want to get familiar with running things on k8s. I would never deploy Compose in any kind of production environment.
I would never deploy Compose in any kind of production environment.
May I ask you why?
Aside from the myriad issues it has on its own, the easiest answer is: it doesn’t scale on multiple machines and instances.
Example: I have 10 services in a compose file, and I need each service to scale independently across multiple servers. Which is easier, more reproducible, and reliable: controlling the docker compose state across many instances, or communicating with a central management service with one command to do it all for me?
I would recommend it as it is fairly easy to understand and most Foss services give you an example to use. You can also convert docker run examples to compose (search docker composeriser) although it doesn’t always work.
I found composer files easier when learning it, to digest what is going on (ports, networks, depends_on etc) and can compare with other services to see what is missing (container name, restart schedule etc). I can then easily backup the compose files, env files and data directories to be able to very quickly get a service up again (although DBs are trickier but found a docker image that I can stick on the compose files which backups the DB dumps regularly)
Yes, in an ideal world, you would learn all the tools the software offers so when a third party tool come along you know what problem it is trying to solve.
I’ve been using DockSTARTer for years and it does what I need, when I need it.
If the goal is to learn, then go for learning Docker directly.
If the goal is to do it well and quickly, don’t reinvent the wheel.