this post was submitted on 26 Oct 2023
45 points (94.1% liked)

Selfhosted

39964 readers
474 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

I want to make a server for hosting media through Jellyfin, and maybe some Nextcloud functionality. I prefer to use containers, but something like TrueNAS' extensions/plugins sound good as well. This is my first server, so I don't know what to choose. My possible options are:

  • Debian
  • Ubuntu
  • Fedora
  • TrueNAS Scale Which one should I choose? I am fine with using either Docker or Podman. (Edit: The server will be running on an old laptop with a single drive slot.)
all 47 comments
sorted by: hot top controversial new old
[–] jcdenton@lemy.lol 27 points 1 year ago
[–] funkajunk@lemm.ee 15 points 1 year ago

I love how every answer so far is Debian.

Debian is the correct answer.

[–] Telodzrum@lemmy.world 15 points 1 year ago
  1. What's the hardware?
  2. Debian, imho
[–] Appoxo@lemmy.dbzer0.com 12 points 1 year ago (1 children)

Using a debian base (OMV6) with docker. Container is maintained by linuxserver.io
No issues so far beyond myself botching permissions but anyone competent should be able to do it.

[–] thirdBreakfast@lemmy.world 2 points 1 year ago

Same, but with the jellyfin/jellyfin image. Been solid for me, less dramas than raw on the OS. Two cores and 8GB for the VM (in Proxmox), media on a NAS, metadata on local SSD.

[–] Atemu@lemmy.ml 10 points 1 year ago (1 children)

Based on that generic request, you're just going to get everyone's personal favourite server OS here. You'll need to give more details to get something tailored to your needs.

[–] lemming741@lemmy.world 8 points 1 year ago (1 children)

True, but everyone's favorite so far is debian

[–] dan@upvote.au 4 points 1 year ago

As it should be.

[–] Coud@lemmy.world 9 points 1 year ago (2 children)

I would like to recommend an Ubuntu Server LTS which is almost as solid as Debian in my opinion but with many useful features like nonfree drivers accessible right away and newer packages.

[–] BitPirate@feddit.de 12 points 1 year ago

nonfree drivers accessible right away

Non-free firmware is included in the Debian installer since Bookworm.

[–] lemmyvore@feddit.nl 4 points 1 year ago

I've recently switched from Ubuntu Server LTS to Debian stable because Ubuntu started adding snaps to Server too, and the LTS support was restricted behind machine registration which doesn't smell good to me.

I haven't had to deal with any unusual driver support on Debian, probably because I use Intel CPU+GPU for transcoding not Nvidia.

The only external thing I've installed was adding the official Docker repo to have the latest Docker, docker-compose-plugin, containerd etc. straight from the source.

[–] possiblylinux127@lemmy.zip 6 points 1 year ago

Probably Debian or Ubuntu

[–] unwillingsomnambulist@midwest.social 6 points 1 year ago* (last edited 1 year ago)

Debian’s great for this.

I’m also running NextCloud (the official AIO Docker image) on Debian. Great for that too.

[–] Decronym@lemmy.decronym.xyz 5 points 1 year ago* (last edited 1 year ago)

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

Fewer Letters More Letters
LTS Long Term Support software version
LXC Linux Containers
NAS Network-Attached Storage
SSD Solid State Drive mass storage
VPN Virtual Private Network

[Thread #243 for this sub, first seen 26th Oct 2023, 10:25] [FAQ] [Full list] [Contact] [Source code]

[–] dinckelman@lemmy.world 5 points 1 year ago

It doesn't matter what your host os is, if you're using docker. Choose whichever one you like more

[–] TheHobbyist@lemmy.zip 5 points 1 year ago* (last edited 1 year ago)

I tried truenas and was at first enamored but felt quite limited when it came to using docker compose. There are no official ways for using it. Additionally because it uses kubernetes under the hood it's not as easy to go under the hood to make it work, as it requires knowledge of that in addition to docker. There is an unofficial docker compose package but there is almost no documentation that I could find and it seems to be largely unmaintained nowadays.

The other OS are good candidates, though through my research, if you are after reliability, people seem to prefer Debian with its more robust validation of updates.

I'm here mostly because I'm setting up my own homelab and I'm preparing for making use of Alpine Linux, which has no desktop environment which makes it particularly fast to boot. Additionally it is very robust, has decent documentation and allows for quite some customization but requires to learn a bit about how to make it work. With its barebone structure, it is more secure as it has a smaller attack surface and you only install what you need. Perhaps an alternative for you to consider?

Edit: to keep some sanity while needing to manage your homelab, make sure to put some weight on an os you are familiar with. I have juggled for months between OSs to find what does what I want but it has been a long battle of learning everything from scratch every time. Having tried proxmox, truenas, xcpng, and now hopefully settling with Alpine and zfs. Go the more sane way, any of those first three will work just fine.

[–] darkan15@lemmy.world 4 points 1 year ago

I'm using Debian, with Docker and running Jellyfin, Nextcloud, Navidrome and Wireguard on Containers on my old laptop. So that would be my suggestion.

You could install CasaOS and/or Portainer, on top of Debian if you want an easier way to manage your server and containers.

[–] bigdog_00@lemmy.world 4 points 1 year ago (2 children)

Proxmox. I've been using it and deployed jellyfin in a container, they have a bunch of one-click deployments and it's great. Or you can just use a VM to group Docker containers together. Having a beautiful web interface is huge, Plus being able to access that interface from anywhere via WireGuard/Tailscale is great.

If you do choose to go down this route, there is a "no-nag proxmox" script somewhere, and it will disable some warnings and give you deeper customization options. Well worth a look!

[–] jkjustjoshing@lemmy.world 3 points 1 year ago (2 children)

I've never used Proxmox, but have a Docker setup on Ubuntu Server with Jellyfin, Nextcloud, Immich, and a bunch of other smaller things. I still don't understand why use Proxmox over Docker. What does it give you that Docker doesn't?

[–] bear@slrpnk.net 4 points 1 year ago

Proxmox is completely different from Docker. Proxmox is focused on VMs, and to a lesser extent LXC containers. If you think you will have a need to run VMs (for example, a Windows VM for a game server that doesn't support Linux) Proxmox is great for that.

I run Docker on a dedicated VM inside Proxmox, and then I spin up other specialized VMs on the same system when needed. The Docker VM only does Docker and nothing else at all.

[–] Lem453@lemmy.ca 2 points 1 year ago

I run proxmox, then an alpine VM which has all my docker containers.

I do this so that I have the flexibility to run more vms if needed

[–] dan@upvote.au 2 points 1 year ago

Proxmox isn't an OS. It runs on top of Debian.

[–] kekvrose@sh.itjust.works 4 points 1 year ago* (last edited 1 year ago) (1 children)

Debian, Ubuntu and Fedora should be good (in that order); I'm not very aware on truenas to give an opinion, but it seems it will work just as well from other comments.

I personally use Fedora, and it's been a solid experience too, with the only gripe bring SELinux. I required a fix for SELinux, but it has worked flawlessly since.

However SELinux might make it annoying to work with containers, so you could consider either switching it off, using another distro or using appropriate configurations to work with it correctly.

[–] SatyrSack@lemmy.one 1 points 1 year ago (1 children)
[–] kekvrose@sh.itjust.works 1 points 1 year ago

No reason other than the fact that you need extra steps to get Jellyfin working in Fedora.

If you have the patience and time, as I mentioned, you can still use Jellyfin in Fedora.

[–] yote_zip@pawb.social 3 points 1 year ago (1 children)

I would only recommend TrueNAS Scale if you want an easy way to manage a ZFS pool. I wouldn't use it for anything related to containers or logic as it's very inflexible and only supports specific usecases through its weird app system. Debian is my usual choice for basically everything, but it will be fully DIY. OpenMediaVault is a good turnkey option based on Debian that's similar to TrueNAS Scale, except it allows you to run plain Docker and other custom usecases. I also like Proxmox (based on Debian) a lot but it's a bit too advanced if you don't need its hypervisor functionality.

[–] funkajunk@lemm.ee 1 points 1 year ago (2 children)

OMV actually removed their portainer implementation, so if you want to run docker you just have to do it like any other distro.

[–] yote_zip@pawb.social 3 points 1 year ago (1 children)

Oh I didn't realize. I wonder why they would do that? Either way it's not a huge deal - the main problem with TrueNAS Scale is that you actively cannot install Docker onto it because it will conflict with the normal TrueNAS Scale app system. There are technically ways to get Docker working on a TrueNAS Scale system but they're unsupported and likely to break frequently on updates. Debian and OpenMediaVault should behave similarly in terms of getting Docker set up.

[–] Appoxo@lemmy.dbzer0.com 3 points 1 year ago* (last edited 1 year ago)

OP is saying wrong information. OMV6 still has Portainer implementation but they moved the setup. OP is probably not aware of it.
https://lemmy.dbzer0.com/comment/4506142

Debian and OpenMediaVault should behave similarly in terms of getting Docker set up.

It is. At my time of setup it was just following the instructions from the docker wiki and then I could install the portainer plugin.

[–] Appoxo@lemmy.dbzer0.com 2 points 1 year ago* (last edited 1 year ago)

OMV actually removed their portainer implementation

Actually they didn't....You should update your information.
https://wiki.omv-extras.org/doku.php?id=omv6:docker_in_omv
Literally a screenshot from their UI:

Edit:

[–] d13@programming.dev 3 points 1 year ago

I use Ubuntu with no complaints, but Debian is probably better, like others are saying. I wouldn't use Fedora for this.

[–] mlg@lemmy.world 3 points 1 year ago* (last edited 1 year ago)

Debian or Fedora

Debian if you want something easy and stable, Fedora if you want latest updates and are comfortable with occasional SELinux settings, TrueNAS if you don't want to spend any time at all setting up disks

Ubuntu if you want infinite dependency hell and 5 minute boot times

[–] 2xsaiko@discuss.tchncs.de 3 points 1 year ago

Never not going to mention NixOS. :)

You just need to set services.jellyfin.enable = true; in your system configuration and that's it. It's not containers, but it's better than containers.

[–] dan@upvote.au 3 points 1 year ago

For a home server, I personally prefer Unraid (which is built on top of Slackware). It has a pretty good UI for managing Docker containers, and also supports KVM (built-in) and LXC (via a plugin).

[–] diffuselight@lemmy.world 2 points 1 year ago

Been running the docker on unraid for years in a HP slimline. Rock solid.

[–] 12bitmisfit@sh.itjust.works 2 points 1 year ago (1 children)

Whatever you're most comfortable with. It's a simple enough ask that you can do it in Ubuntu server or Debian quite easily.

I would recommend at least using docker but you don't have to.

Truenas isn't very forgiving with drive configuration. I really like it but it isn't great for randomly adding drives here and there. Unraid might be a better choice for home usage. I have never had good luck with their built in app stuff but I've also never really tried past it not doing what I want.

I run truenas with a ubuntu server vm and docker some stuff in that. I also run proxmox on another server and a dev server running Ubuntu server that I docker things on.

[–] 8tomat8@lemmy.world 2 points 1 year ago* (last edited 1 year ago)

From your list, I would go with Debian. Fedora is amazing but doesn't have LTS, so you'll need to update it manually quite often. You can use a script for automatic updates, but I rarely had it working smoothly. Ubuntu is just a joke with repository hell. I wouldn't recommend it to anyone but grandma or a child for the desktop, because of its simplicity. TrueNAS never tried...🤷

I would also look into Alpine and some Arch-based distros.

And yes, use containers, this will save you time eventually.

The only real requirement you have for the Jellyfin server is ffmpeg... But this thing runs everywhere

[–] warmaster@lemmy.world 2 points 1 year ago

I'm running Fedora Server + Cosmos Cloud. Freaking awesome. Fedora Server comes bundled with Cockpit, which makes admin work much easier, and Cosmos Cloud makes Docker very easy, and automates your security.

[–] ErwinLottemann@feddit.de 2 points 1 year ago (1 children)

in the end it doesn't realy matter because you plan on running the services in containers. that beeing said, have you thought about arch?

[–] funkajunk@lemm.ee 3 points 1 year ago

My motto is "Debian for servers, Arch for workstations".

[–] hansl@lemmy.world 1 points 1 year ago (1 children)

TrueNAS did make it easy for me to manage my home lab, but I’m more of a software engineer than a devops. Debian if you’re comfortable with managing that.

[–] funkajunk@lemm.ee 3 points 1 year ago

TrueNAS Scale is based on Debian 😁

[–] surewhynotlem@lemmy.world 0 points 1 year ago

There's a jellyfin docker container. Get that going and then the underlying OS becomes important

[–] CCMan1701A@startrek.website 0 points 1 year ago

I went with bodhi.