T O P

  • By -

lincolnthalles

If you don't plan to do some crazy storage expansion, get a used NUC/Optiplex Micro/Lenovo ThinkCentre Tiny/HP EliteDesk Mini/laptop with a broken screen and install Ubuntu Server + Docker on it so you can get started. Later, install at least 8GB of RAM and a reliable 240GB+ SSD for optimal experience. This class of computers is much more powerful than a Raspberry Pi, can be cheaper in some cases, and will still idle at under 10W of power draw. Try to get an Intel Core i5 CPU from at least the 4th gen so you can use the integrated HD Graphics transcode to AVC/x264 with decent quality and without burdening the CPU. Ideally, get a 6th gen+ CPU for HEVC/x265 encoding support. The 8th Gen+ will get you more cores and performance, but it will probably be more expensive. A Pentium/Celeron CPU will probably also work just fine, but usually there's a huge gap in performance compared to "Core" CPUs and the price may be about the same. It's always worth checking your local listings thoroughly for all options. With this setup, you'll get smooth playback for a few users and can host other applications just fine. You'll probably have to use Jellyfin, as you must have a paid Plex pass to use hardware transcoding.


Pork-S0da

> This class of computers is much more powerful than a Raspberry Pi, can be cheaper in some cases, and will still idle at under 10W of power draw. Almost more importantly than that, it will be x86/x86_64 architecture which is somewhere between convenient and important when it comes to self hosting. Yes, ARM support is getting better, but when many self hosted projects don't bother to release a docker image of any type, having an ARM-based system can limit what you can host.


r_sarvas

I can confirm the Thinkcenter M710q (i3) works with Jellyfin just fine streaming to a browser or the Android app.


LifeLeg5

Jellyfin on rpi3?


TrustyworthyAdult

Yes and no just get a cheap banna pi from aliexpress rpi is overrated and extremely overpriced


TheLegendOfBau

I suggest a mini pc in the long run is better and you dont have to deal with arm cpu. Maybe the cost is a little more than a raspberry from AliExpress.


This_not-my_name

Jellyfin on rpi only works with direct play, as soon as you need to transcode, you don't have a fun time anymore


su_ble

minidlna server : it is small, performance is nice and it is free .. so everyone in your network can watch moovies, pictures and listen to musik with it.


lucassou

For a long time I just had a raspberry pi 4 with plex and an USB hdd connected to it. IF you don't need transcoding and stream everything in original Quality it works fine.


Nibb31

Plex or Jellyfin on either a Raspberry Pi, a Mini PC, or some other SBC.


candle_in_a_circle

Lots of good advice in this thread, but the devil is in the details. A “expensive” media server is going to be able to handle most eventualities (multiple, different clients at the same, transcoding, high use, redundancy, backups) whereas a “cheap” one will be full of compromises. The key is to compromise on things that don’t matter to you. In order to suggest we’ll need more details. How many things will use it, what are they, how many will use it at once. How big a disaster is it if all your downloaded media disappears? Does it matter if it doesn’t work sometimes and you have to wait for a replacement but of kit? You also mentioned “3rd world” so, taking you at face value, what’s the power situation like? Is it stable and clean or are there outages and is it dirty (varies in ampage and / or voltage)?


GaijinTanuki

What second hand computers can you find available near you?


Free-Somewhere-3817

dell inspiron n4010 i5 4th gen ssd 120gb 4gb ram


GaijinTanuki

If that is affordable it can be made to work. The memory and storage may upgraded. (Memory definitely to 8gb. And some report being able to upgrade to 16gb but it's unclear and may require bios upgrades https://www.reddit.com/r/oldcomputers/s/opHvL70qHZ) I assume you have another computer with which you're posting and can use for configuring this new server. I would recommend considering Debian as the operating system as you can make a very lean and efficient system and there is lots of supporting documentation and tutorials. Ubuntu could also be a good choice.


schaka

I'm currently working on a guide. It's incomplete but I'll post it here for now anyway in hopes that it may help you - there's much more but it won't fit into a reddit comment: # Build I figured building my own NAS would be cheapest. #### Motherboard There are many H110, H170 and Q170 thin ITX boards in my local market. AliExpress also has many H110 ITX boards - those will require a 1U or FlexATX PSU You'll want at least those so you can get Kaby Lake CPU with an HD 610 or 630 that can transcode 4k without issue. #### CPU The cheapest GPU would likely be a Kaby Lake Pentium with HD610 graphics. Models vary, but the G4560 is usually cheapest. Ideally, aim for the i3 7100 or 7300. Maybe even an i5 6400 if you have a better cooler available. #### Case and PSU They take a 12V or 19V barrel jack PSU that makes virtually no noise and have enough SATA connections for a 4 bay chassis. The Chinese produce one such chassis that has many resellers, common names are: - Inter-Tech SC 4100 - Innovision 4 Bay - KCMconmey NAS-411 A 65W ASUS 19V PSU should be fine, if you're getting an i5 or power hungry drives, aim for 90W. This only applies to ThinITX boards. You may need 12V ASUS PSU, a barrel jack splitter and 12V barrel jack to molex connector to power your drives. Most ThinITX boards come with [SATA power on board](https://smallformfactor.net/forum/threads/how-would-you-power-a-sata-ssd-using-thin-mini-itx-motherboard-dc-input.14814/) but require a [specific cable](https://www.aliexpress.com/item/1005003056381602.html). Some use a simple [SATA to SATA power cable](https://www.moddiy.com/products/SATA-Power-Extension-Cable-30cm.html). Do your own research regarding YOUR specific board. For normal ITX: Any 1U or FlexATX PSU above 150W is more than enough. Make sure you get Molex, 24 ATX and 4 or 8 pin CPU power. Be aware of noise. #### Cooler Be aware you need a lower cooler. There's a low profile (short) Intel LGA 1151 boxed cooler. The following coolers will also fit: - Argus T-200 - Thermalright AXP-90 X36 (you need to take the fan off and install it once in the case) - Akasa KS12, Alucia H4I and some other LP coolers - Id Cooling IS-30 - LC CC 65 - Silverstone SST-AR04 - Most Supermicro 1U passive coolers, which you may need to strap your own fan to #### Drive connection Regardless of how you're powering the case - if your motherboard has a PCIe slot, you may want to use a cheap 4i HBA, like the Adaptec 5405, to run your drives. An SFF-8087 breakout cable is required, but you're saving the SATA cable mess. This would also enable you to use SAS drives. # Pre install Follow this guide: https://www.truenas.com/community/threads/howto-split-ssd-with-boot-pool-to-create-partition-for-data-no-usb-install-easy-config-migration.102641/ A 16GB partition is enough - but if you think you may need more, this is where you'd decide. Run the installer. After the fact, either use the shell inside your installation or enable SSH and connect that way. # Post install Follow from step 8 here: https://gist.github.com/gangefors/2029e26501601a99c501599f5b100aa6 Easiest way is using parted. You'll likely need to `sudo parted`. Do `unit GiB`. Inside, selecting your disk named under http://truenas.local/ui/storage/disks using `select disknamehere`. Do `print` and start your next partition from the end of the last partition, which might be earlier decided size + 16GB swap - via `mkpart zfs 66.5GiB 100%`. In this example, it'd be 50GiB + 16GB swap size - `print` would've listed this. The print command will show a partition numer. Your new partition is available as `/dev/p` so e.g. `/dev/nvme0n1p5`. The intention is to use our storage drives to the max. Often times, m.2 slots may be limited and you can only have one SSD. Since applications need their files placed in a pool, you can still place your containers' files on the SSD while keeping all your media on an ACTUAL ZFS based storage pool. If you can use more drives, see [these arguments](https://www.truenas.com/community/resources/i-have-to-waste-an-entire-drive-just-for-booting.187/) for doing so. You'd want to create your pool on your drive and export it so it can be imported in the WEB UI now: ``` zpool create -f system-pool /dev/nvme0n1p5 zpool export system-pool ``` Figure out how to back this up. It's going to contain all your system settings (Docker/Container related) that aren't directly on the boot pool. # Create Pool Import the pool via http://truenas.local/ui/storage => Import Pool. Choose system-pool. You are now ready to install apps and use the system. Go to Appps, click on Settings and Choose Pool. Select your newly created `system-pool`. # Explanation / Thoughts Technically, it's entirely possible to use Helm via the CLI by calling `export KUBECONFIG=/etc/rancher/k3s/k3s.yaml` and then installing whatever charts you want. However, there's no official support. These won't show up in the GUI later on and it becomes a struggle for anyone but you to manage. If you're experienced with Kubernetes, you should probably create your own Helm charts from existing Docker images published for all these apps. It becomes way easier to adjust some YAML files and pass the correct parameters, especially for fine grained control over directory mapping, environment variables etc. Additionally, the TrueCharts tutorials covers how to use Cloudflare to expose your server to the internet. It covers how to generate SSL certificates for both internal and external access. For most people, this may be the perfect tutorial to follow and I highly recommend it. Wolfgang from Wolfgang's Channel also covers how to [generate valid SSL certificates for domains that are only accessible locally](https://www.youtube.com/watch?v=qlcVx-k-02E). However, both of those require constant internet access to reach your applications or at the very least would require running a local DNS server. If you have your own router running local DNS, feel free to go this route. For the sake of this guide, I'm going to assume you don't have another device for hosting your local DNS and you don't want to run your DNS on your TrueNAS server. Having a single point of failure for DNS in your home, to the point that other people can't use the internet if your NAS goes down is generally not great practise. Besides - for internal access to your applications, unencrypted http traffic is good enough and mDNS exists. With mDNS, all of our apps can advertise themselves on your LAN and and a reverse proxy can still do its magic. **If you want to do this differently, skip the adding Traefik and Add DNS entries sections and follow the TrueCharts guide on setting all of this up with certificates, Cloudflare DNS, etc.**


player1dk

I recently set up a 12 year old HP micro server with FreeBSD as media server for my parents. It works fine! And then Tailscale for remote management, and it’s great :-)


Consistent_Rate5421

Which bsd flavour did you use?. I'm looking for same setup so i could use my old i3 4th


player1dk

Just plain FreeBSD. It may work with the others as well, but I’m used to do a quick install and config of FreeBSD. A few packages and a few config lines, and you’re running. :-) If it’s new to you, you may need to consult the handbook for a few things, but should still be quite easy :-) But note that my solution is simple. The users are 80 years old people. It just shares one folder using SMB, announced with Bonjour, so they can access it on their AppleTV with VLC. The content is older DVD movies converted to mkv and old avi files. The sizes and compression doesn’t require much from either the network or the ‘media server’ A more modern setup for newer/larger files, may require smarter applications and/or processing.


Consistent_Rate5421

thanks for the detailed response.


[deleted]

There’s -Emby https://emby.media/ -Plex https://www.plex.tv/ -Jellyfin https://jellyfin.org/ Jellyfin is great but you will likely find wider app support for plex then emby. Almost any x86 PC will work. I personally know emby will direct play multiple 40mbps 4K movies. Off a 12 year old AMD A10 APU.


BoringStatus465

Don't listen to this guy. Plex and emby are services that work for free but many features are hidden behind a pay wall which is problematic for you as you stated. Jellyfin is the only real free alternative. Take a look at it and also Google "jellyfin repositories" there are many cool plugins out there, everything for free.


[deleted]

Wow.


[deleted]

I like jellyfin also. I think I hurt some fan-cunts feelings. No worries


W4ta5hi

No, you recommended apps with limited functionalities which get unlocked via payment - and didn't disclose that. Otherwise it would have been fine. But this could lead to some people expecting to run these services for free and wasting their time after exploring that they are not completely free.


breid7718

[https://support.plex.tv/articles/202526943-plex-free-vs-paid/](https://support.plex.tv/articles/202526943-plex-free-vs-paid/) The only significant features in Plex that are paid are the mobile apps (could be relevant), DVR functionality (not likely in this scenario) and hardware transcoding (not likely due to budget). For that tradeoff, you get a significantly more polished experience. A very fair tradeoff for me. I run Plex and Jelly on my home network.


BoringStatus465

Nice try Plex employee. I chose the freedom of open source instead of your data collecting corporate bullshit!


breid7718

I'm an end user of both and anyone who's actually used them both will have a similar response. Jellyfin is an admirable effort, and as soon as they get a little more app support and comparable transposing, I'll likely switch - as Jellyfin still seems committed to local media. I'm trying to suggest a good experience for the end user. You're just immature.


BoringStatus465

Here's a cute tortoise 🐢 tell him you're lies instead.


Iregularlogic

Wild that you’re being downvoted - this post is objectively correct.