Comment on Does "Selfhosted" mean you actually have a server at home?
tristan@aussie.zone 1 year agoDocker/kubernetes and VMS are similar in that they are all virtualisation but the similarity kinda end there. Love them or hate them, Each has its own important role in IT infrastructure.
First off, docker itself needs a host operating system to run. Secondly, Docker are containers. Each image is built on a cut down version of the operating system generally to perform one specific task or run one specific application. The environment is preconfigured to work exactly as intended so generally speaking, you don’t get the whole “but it works on my machine”
Kubernetes I’m not the most qualified to speak to, but pretty much someone said “ok docker is great but we want redundancy, scalability, etc” and made kubernetes.
A vm is a full virtual machine. You can give it virtual harddisks, virtual network cards, etc. You then install a full operating system on it, could be windows or Linux or whatever you need.
From there you can install docker if that’s what you want, or can install specific apps. This is the first difference, is if you install the app compared to a docker container, you need to make sure you have all the prerequisites met, all the correct compatibility, etc. It’s up to you to make sure your system is correct for the software.
Another major difference is docker containers are all seen on the network as coming from whatever the host machine’s IP is.
Whereas the network views each vm as it’s own device on the network, giving each it’s own IP (if using dhcp) and allowing things like vlans and things.
As for my setup, I have 3 VMs with docker servers, each with between 20-30 docker containers, 3 VMs running adguard DNS, 1 vm acting as a tailscale entry point, then a few application specific VMs. It’s handy just being able to fire up a blank Ubuntu instance to play with me software, and if anything goes wrong just delete the whole machine and start fresh.
Then for storage behind it all, I have a qnap ts453d with 4x 8tb drives.
Then outside my home, I have 2 X Oracle hosted VMs, one hosting about 22 websites and all the stuff they need, one acting as a tunnel into my home services since I’m behind a CGNAT, and then another physical server located in the local data centre running email for a few small businesses and myself
Valmond@lemmy.mindoki.com 1 year ago
Thank you for the thorough explanation!
I think a VM for me would only bf a windows on inux for like Photoshop and 3dsmax :-)
Docker though seems interesting for a simple user like me.
Thanks again !
Cheers
tristan@aussie.zone 1 year ago
No worries, in terms of docker, if you want to see some of the more useful docker things along with explanation of how to get them running, check out noted.lol and mariushosting.com
Noted has a lot of writeups on various projects that are nearly entirely docker based. Marius focuses more on docker projects on Synology but for many of them you can go to the project home to get the generic docker instructions and just read his one for project descriptions and intially setup guides
Valmond@lemmy.mindoki.com 1 year ago
So just laid my hands on a 55€ + 6.49€ Shipping Lenovo thinkcenter M 910Q I5 Vpro 6eme gen 8GB/256GB SSD
It’s crazy. I mean not long ago all I could even dream about was expensive slow computers with small harddrives :-D
So I’ll dedicate it to docker “stuff”, thank you :-) I really like the docker idea, and running on like “any” Linux kernel (if I got that right) is so awesome. I have mostly had to work on windows at work and it’s so both changing and closed system it’s infuriating in the long run.
Thanks for the link to all the examples, I have to get to try it all out, but if I want to “dockerise” stuff myself, how do you decide like how do it access to the outside world, like I fire up a docker image which plays music (if that’s even possible?) it has to have access to the disc, sound drivers, maybe interactive stuff etc on the host PC right?
Cheers
tristan@aussie.zone 1 year ago
Congrats on your new slippery slope haha
So the main things you’ll want to read up on for that are mounts. Mounts will let you attach files and folders from the host computer into the docker container that it sees as if it’s inside the container.
A lot of docker apps will run a web host, so instead of accessing them like a normal application, you load up the website that’s located at the IP address, and the exposed port. Then just like running Netflix or anything, it already has access to local sound and video devices through that
This also means that you can open them up to other computers/devices on the home network… so your phone could load it up and play music or your windows PC could, and it’s all served from that docker container
If you’re interested in hosting media, you could look into Plex or jellyfin, they are media servers that can stream self hosted videos, music and photos over the network.
There’s a lot of other options that are more specific, and what’s right for everybody else might not be right for you so it’s worth playing around with various options