I mean basically the title. Currently all my services are just running directly on my arch server and it has been working well enough for me and i am super comfortable working with it. A few months back I had a minor crash of the server where the system had become not functional. I was able to recover the server to the point that my services could run but i never got the graphical part of the server going again or nextcloud running.

At this point I’m just considering wiping the os to a fresh one and starting clean to get everything working correctly again. What I’m wondering is, is it worth learning docker and deploying all my services that way or should I just continue with the way i have been doing it for years now?

I will be running the various Arr apps, Emby, NextCloud, Qbit, Homepage?, and probably a few others that i can’t recall off the top of my head. Some of the services are accessed of site if that matters at all. I did briefly explore docker in the past but got stuck and my friend pushed me towards straight arch. Now I’m considering giving it another shot but wanted to hear folks here input on the pros and cons of either way

  • mlfh@lemmy.ml
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I’d personally recommend putting your provisioning steps for each service into Ansible playbooks. That way, you can spin them all up from zero any time, distribute them across different hosts, in vms or lxc containers, any way you like.

  • Fermiverse@feddit.de
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I never used containers, K8s etc and built my server all from scratch using debian.

    This year I switched to a hypervisor and use the proxmox supplied lxc containers.

    Never without again. The convenience of spin a new one up, fiddle around without messing up the main sys, doing snapshots to clear some mess if needed makes selfhost so much easier.

    No matter what software you use I would say containers.

  • JL_678B
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I agree with others and have an alternative view. How about you install a hypervisor like Proxmox and then you get the flexibility of running Docker, LXC containers or even VMs.

    Personally, I run a mix of LXC containers and Docker. Why? I really like Docker but the all inclusive nature of the containers can make customization of settings difficult.

    In contrast, LXCs are heavier than Docker containers but they act like a full Linux machine and so you can use all of your past system admin knowledge and customize away. They are mich lighter than a VM and so they are a nice middle ground.

    Summary for simple self-contained apps, I use Docker and for more complex apps, I rely on LXC containers. With Proxmox you can easily use both and so it is the best of both worlds!

  • Alfagun74B
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Definitely. I cant imagine the pain of non-isolated services fucking each other up on my root os. damn. You should check out caprover.

  • CameronDev@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Document. It doesnt matter what you use exactly, but document it. It will make recovery easier regardless of the underlaying server/software.

  • tech2but1B
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I’m going to assume everyone here saying use docker is fully conversant with docker already. As someone who already happily has multiple services hosted on multiple (extremely light) VMs I would say just leave docker alone. I have spend most of today trying to get some containers in docker working (reliably, which is what a lot of people miss). Yes getting docker up and running and containers working is simple, but if it all goes sideways tomorrow what are you going to do? What’s your backup plan? IME it’s much harder to get a docker stack back up and running using your own data than simply restoring a backup to a VM host. There are a couple of things I want to use that are docker only and there is something to trip you up at every turn. It’s another level of complexity you don’t need. If you have a working environment now then why would you need to add docker?

    The only thing I would say would be to maybe use a different distro for hosting everything on, but overall “if it ain’t broke don’t fix it”.