I want to reset my server soon and I’m toying with the idea of using a different operating system. I am currently using Ubuntu Server LTS. However, I have been toying with the idea of using Fedora Server (I use Fedora on my laptop and made good experiences with it) or even Fedora CoreOS. I also recently installed NixOS on my desktop computer and find the declarativeness pretty cool (but I’m still a complete beginner) and could imagine that it would fit well into a server setup.

I have quite a few services running on my server, such as Nextcloud, Conduit (Matrix), Jellyfin, etc. and all in containers. I would also rather not install programs without containers, because 1. compose is super easy to maintain and set up, 2. it remains very clear with containers (and compose) and 3. I believe that containers are more secure. But since I also want to make the services inside the containers available, I currently have Nginx installed as a reverse proxy (not in the container, but on the system) and always create certificates with certbot so that I can use HTTPS encryption.

In the paragraph above I actually described exactly the use-case of Fedora CoreOS, but I have no experience with the system and how it works. That’s why I’m still a bit hesitant at considering the OS at the moment. I can imagine that NixOS with its declarative nature seems well suited, since, as I have heard, you can configure containers as well as Nginx and with Nginx also https certificates declaratively. But I could also use a base system like before (Fedora Server or Ubuntu Server) and simply install podman, nginx and certbot and manage everything that way.

Have you had any experience with Fedora Server, Fedora CoreOS, NixOS or a completely different operating system for servers and what are/were your impressions with this setup? Or do you just want to share your knowledge here? I would be delighted.

    • JustEnoughDucks@feddit.nl
      link
      fedilink
      English
      arrow-up
      2
      ·
      7 months ago

      Can’t be hit by new backdoors when your packages haven’t had updates for years 😉

      In all seriousness Debian makes solid choices that makes everything as low maintenance as it can get for self hosting.

      For someone who recently lost a bunch of their free time, that is amazing to not have to mess with stuff.

  • realbadat@programming.dev
    link
    fedilink
    English
    arrow-up
    2
    ·
    7 months ago

    Proxmox.

    Each service becomes an LXC. Docker containers can be migrated to LXC, or be contained within an LXC dedicated to docker.

    Running out of processing power? Add another server, add to a cluster, and migrate services (LXC or VM) over.

    Having run Fedora, Debian, Ubuntu, CentOS, RHEL, slack, even Oracle Linux - Proxmox is what I run for myself (and some clients).

  • refreeze@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    I have used all three! I started with Server then went to CoreOS running Kubernetes and settled on NixOS which I have been very happy with for about a year now. I run about 25-30 services all using built in modules.

    Regarding security, if you are using well crafted modules on NixOS, there should be good systemd hardening in place. That being said there is no reason you can’t just use containers on NixOS.

    I also find deploying NixOS far superior to butane/ignition used by CoreOS/Fedora. I use nixos-anywhere and can deploy my entire server in a few minutes without manual intervention.

    • bananahammock@lemmy.ca
      link
      fedilink
      English
      arrow-up
      1
      ·
      7 months ago

      I’m a NixOS convert too. I actually still run everything in docker but the idea of not having to remeber or document how I set everything up was too appealing…a year later and my desktop and laptop are now on nix too

  • Strit@lemmy.linuxuserspace.show
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    I’m probably the odd one out, but my home server is running Arch Linux. And it’s been really smooth. I do weekly maintenance in the form of updates and cleanup and it’s been reliable since I set it up a couple of years ago.

    • pete_the_cat@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      6 months ago

      I’ve been swapping between Arch with OpenZFS and FreeNAS/TrueNAS for probably 5-7 years now. In fact, I’m doing that right now! I think SCALE is finally stable enough to my liking…but we’ll see.

      ZFS becomes a pain to manage via the CLI when you have more than a few disks, a nice web GUI takes the pain away.

  • towerful@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    I always think about using nixos. But considering I dockerise everything, I always end up using Debian.
    Good old stable Debian

    • Moritz@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      7 months ago

      You can also use container within NixOS and AFAICT even declare the containers which should be running. Also NixOS is sad to be stable, or am I missing something?

        • corgi@lemmy.world
          link
          fedilink
          English
          arrow-up
          0
          ·
          7 months ago

          Nixos will use/download cached binaries that are available in its repo. It has one of the biggest repositories of any Linux distro. It’s on par with Arch with around 90 thousand packages.

          Unless you are doing something custom or niche, your nixos won’t have to compile anything.

          • lemmyvore@feddit.nl
            link
            fedilink
            English
            arrow-up
            0
            arrow-down
            1
            ·
            7 months ago

            Are all those packages available in binary format? Not familiar with Nix but that’s certainly not the case for Arch. Arch has 85k packages in the AUR as source recipes but not as binaries.

            I still think Debian makes a better use case for a server since it provides everything as binaries.

            If you’re going to use binaries what’s the point of using Nix anyway? The declarative aspect is nice in an abstract sort of way but you can achieve a system deploy or restore just as fast by installing a vanilla system and a few config files.

  • TCB13@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    You next OS will be… Debian. Because you care about your time and you want stuff to be stable.

  • Decronym@lemmy.decronym.xyzB
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    6 months ago

    Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:

    Fewer Letters More Letters
    HA Home Assistant automation software
    ~ High Availability
    HTTP Hypertext Transfer Protocol, the Web
    LTS Long Term Support software version
    LXC Linux Containers
    SSH Secure Shell for remote terminal access
    VPN Virtual Private Network
    VPS Virtual Private Server (opposed to shared hosting)
    ZFS Solaris/Linux filesystem focusing on data integrity
    k8s Kubernetes container management package
    nginx Popular HTTP server

    [Thread #672 for this sub, first seen 11th Apr 2024, 15:35] [FAQ] [Full list] [Contact] [Source code]

  • johntash@eviltoast.org
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    Do you have any reasons for wanting to switch your server OS, or is it more to learn something new? Either way is fine, but it might change what is more interesting to you.

    I used centos forever, but only recently started slowly migrating everything to NixOS. I use NixOS for the OS and a few common things like VPN, monitoring, etc. For all of my actual services, I deploy them using Hashicorp Nomad with docker.

    I’m not sure i would recommend defining docker containers using NixOS. It’d be fine for a couple servers, but not great for a cluster where services can move around.

  • theroff@aussie.zone
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    I use Debian at home on my homeserver and a mix of Debian and Arch for my workstations. Most of my stuff is managed with Ansible to make rebuilding easier and most workloads in podman containers.

    Personally I don’t overthink the distro thing. I recently started using Arch and quite like it. I’ve noticed packages that are available in Debian but not Arch and vice-versa. Debian Stable is nice because it’s just, well, stable.

    Fedora has an annoying release cadence IMO. I have experienced desktop bugs in the early GA releases before which put me off. If I wanted instability I would sooner go with Arch (and I am yet to have many issues with Arch yet).

    If I were to go with a BSD for a home server it would probably be OpenBSD or FreeBSD. OpenBSD has vmm and a bunch of tooling around it, and FreeBSD has bhyve and jails. I haven’t taken the plunge because Linux works and it’s what I know.

    These days I hear about people using proxmox on their homeserver with LXC containers and/or VMs.

    • Moritz@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      7 months ago

      Fedora has an annoying release cadence IMO. I have experienced desktop bugs in the early GA releases before which put me off. If I wanted instability I would sooner go with Arch (and I am yet to have many issues with Arch yet).

      Do you mean they are too frequent, or what do you mean?

      • theroff@aussie.zone
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 months ago

        Yeah, too frequent and too buggy. It got annoying having to do upgrades every six months and have to deal with all the new bugs that came with it.

        Basically give me Debian-style biannual releases or Arch-style rolling releases.

  • ryannathans@aussie.zone
    link
    fedilink
    English
    arrow-up
    0
    ·
    7 months ago

    I’m using FreeBSD now and I have been blown away at how well it just works and gets out of your way. I am using appjail templates to script containerisation of my services

    • loki@lemmy.ml
      link
      fedilink
      English
      arrow-up
      0
      ·
      7 months ago

      What services do you run on FreeBSD? Does using FreeBSD limit you in the number of apps you can have, as most of them target Linux?

      • Moritz@lemmy.worldOP
        link
        fedilink
        English
        arrow-up
        0
        ·
        7 months ago

        I am also curious. FreeBSD is, in my opinion, is such an unorthodox choice.

        • lemmyreader@lemmy.ml
          link
          fedilink
          English
          arrow-up
          1
          ·
          7 months ago

          If I remember correctly when Microsoft bought Hotmail years ago, it was run on FreeBSD and SUN Solaris (And it took Microsoft a really long time to migrate it to Windows servers, but that’s another thing).

  • Pacmanlives@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    7 months ago

    Give Gentoo a shot. It’s super stable and you will understand everything in your system. Also it now supports binary packages

        • Nibodhika@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          7 months ago

          Portage has supported binary packages since forever, back in 2012 I had some binary packages on my system, I clearly remember because it was a pain in the ass to compile certain things, for those I installed the binary version. It’s like Debian supporting source packages, it’s been there since forever but people don’t know about it.