How do you use NUC in homelab? reddit / selfhosted ---------------------------------------------------------------------- _newbie2003 · 2023-10-30 02:30 I purchased a NUC with 32 GB memory, 512 SSD and AMD 8 core processor. I already have a NAS. I was wondering how do you guys use NUC? My mostly workload are containers. Do you install proxmox on NUC itself and run VMs OR Just install a Linux on NUC and use it as a docker host? Suggestions please? Appreciate your advice, thank you ---------------------------------------------------------------------- Digital_Warrior · 2023-10-30 02:53 Currently it serves as a pi hole. ---------------------------------------------------------------------- Door_Vegetable · 2023-10-30 03:03 I would personally use proxmox. Then setup a couple of vms for k3s. But that’s just me for learning Kubernetes. Depends what your use case is and what you want to host. ---------------------------------------------------------------------- devzwf · 2023-10-30 03:10 All depend of your use case..... the possibilities are quite large.... * proxmox * xcp-ng * bare metal + KVM (DIY) * bare metal * etc ---------------------------------------------------------------------- dazchad · 2023-10-30 03:33 I use it without proxmox. I run everything in it, including my dev env, and it barely notices. ---------------------------------------------------------------------- Zamboni4201 · 2023-10-30 04:03 Bare metal linux. kvm and docker host. ---------------------------------------------------------------------- pooamalgam · 2023-10-30 04:17 I used to have Proxmox installed on my NUC-a-like mini PC and at that time I just had it running a handful of services for my home network. Since then, however, I've been using it to replace some of my passthrough VMs I was using for various purposes - I just PXE book the mini PC to whatever image I need at the moment, and have it attached to a monitor next to my main rig's monitors with keyboard/mouse sharing. ---------------------------------------------------------------------- notdoreen · 2023-10-30 04:37 What's k3s? ---------------------------------------------------------------------- Door_Vegetable · 2023-10-30 04:38 It’s light weight Kubernetes. ---------------------------------------------------------------------- notdoreen · 2023-10-30 04:39 Thank you. What is the use case, and what can one do with it? ---------------------------------------------------------------------- Door_Vegetable · 2023-10-30 04:43 Kubernetes is an open-source container orchestration system for automating software deployment, scaling, and management. I use it for building out applications I make and to scale micro- services for my software I develop. It’s probably overkill for a home network but I like to use it because it somewhat simulates what working in an ideal development company would use. But you can pretty much host anything that you could with docker with it. ---------------------------------------------------------------------- nismor31 · 2023-10-30 04:43 My newest one (11th gen i7) is running Ubuntu server as a docker host. I also have a 1st gen still running as a seedbox. Both use shares from my nas which hosts media files & backups. ---------------------------------------------------------------------- notdoreen · 2023-10-30 04:44 Thank you! ---------------------------------------------------------------------- ben_bliksem · 2023-10-30 05:31 A NUC with an AMD CPU? I run some stuff on a NUC at home. Easiest is to run Ubuntu server or similar + Docker compose. ---------------------------------------------------------------------- This-Gene1183 · 2023-10-30 05:49 Agreed. Ubuntu + Docker Compose ---------------------------------------------------------------------- pywkt · 2023-10-30 06:15 i run proxmox on metal and prefer to run everything i can on lxc. one ubuntu server vm for various docker compose and a couple more for other services that i just turn on when i need them. nightly backups to internal ssd and truenas. i7 nuc11, 2tb ssd, 64gb ram ---------------------------------------------------------------------- d3adc3II · 2023-10-30 06:16 I just wonder if how much load the built-in NIC can take. Used sth like this before, ran few containers and I got random disconnections, very irritating. ---------------------------------------------------------------------- arcadianarcadian · 2023-10-30 07:45 Proxmox + docker host. ---------------------------------------------------------------------- AuthorYess · 2023-10-30 07:47 That's... such a waste... ---------------------------------------------------------------------- AuthorYess · 2023-10-30 07:53 Proxmox with Linux Hosts (probably Debian or Ubuntu) and Docker Mainly. Virtualization these days is basically running on baremetal. There's almost no perceivable overhead cost. This is mainly because it allows for flexibility to have multiple hosts. It can get complicated but host for reverse proxy, host for external services, host for internal services, host for logging (should be on a different physical device but it's home...), etc. A simple one docker host is sufficient for most homelabs though, but again virtualizing it means I can in the future. It's also way easier to backup and restore computers if there's a loss with backups of VMs. ---------------------------------------------------------------------- RedBoll · 2023-10-30 08:36 I am running Proxmox on my NUC ( 8 x 13th Gen Intel(R) Core(TM) i3-1315U ) This is my PoC/DEV machine next to an ESXi (mATX) host and my first experience with Proxmox. So much options with Proxmox. Next step will be exploring a Proxmox cluster. (This might replace my ESXi host one day.) ---------------------------------------------------------------------- wireis · 2023-10-30 08:52 I’ve been playing around with my NUC it’s actually an old Asus Chromebox I’ve had laying around for years upgraded the M.2 SSD and installed Ubuntu Server + CasaOS Currently running Adguard-home + WireGuard + TailScale Just trying out CasaOS at the moment and playing around with stuff on the NUC to keep me from breaking my main HomeLab box. ---------------------------------------------------------------------- carolina_balam · 2023-10-30 08:55 Basic - ubuntu with docker compose containers ---------------------------------------------------------------------- ElevenNotes · 2023-10-30 09:42 My NUCs ran bare metal Linux and are mounted under my car seat. They provide offline and online services while traveling. All containers. OS is read-only. ---------------------------------------------------------------------- Digital_Voodoo · 2023-10-30 10:17 I'm seeing many people here in the comments installing Ubuntu... Am I the alien one for going with Debian? I've had issues with Ubuntu on my VPSes a few years ago, and replaced it with Debian and everything has been smooth since then. I thought I'd slap it on the NUC too... Am I missing something not going the Ubuntu way? ---------------------------------------------------------------------- mmcnl · 2023-10-30 10:18 That's what I do. ---------------------------------------------------------------------- los0220 · 2023-10-30 10:29 You can make yourself a pfsense box. ---------------------------------------------------------------------- Simon-RedditAccount · 2023-10-30 10:37 Not exactly a NUC - a fanless MSI Cubi N with Celeron N4000. Bare metal Ubuntu Server running nginx + docker-compose for everything other. ---------------------------------------------------------------------- AnxiouslyPessimistic · 2023-10-30 10:53 I run windows server on it with VMware hosting multiple VMs. It’s not the most efficient OS for it obviously but I’m a heavily window background engineer and like to tinker. My VMs are a home assistant dedicated box and an Ubuntu VM for docker containers ---------------------------------------------------------------------- penghon · 2023-10-30 10:54 You can run off docker compose + k3s for best of both worlds docker compose for those services that are essential and you can replicate easily if you ever need to replace the NUC ( back up the files/folders to Git-something or whatever works as backup). It makes it way much easier to start everything that you need with a single command. k3s because it is kubernetes and everything runs off k8s nowadays ---------------------------------------------------------------------- Live_Shallot1353 · 2023-10-30 11:09 Best decision for me was to switch to proxmox on the host. ---------------------------------------------------------------------- sk1nT7 · 2023-10-30 11:12 Proxmox > Ubuntu VM > Docker I bind mount my NAS via /etc/fstab and store all docker bind volumes there. Essy like that. ---------------------------------------------------------------------- AsterOps · 2023-10-30 13:20 openSUSE MicroOS Server with podman rootless containers. I have personal nextcloud and gitea instance. All public services are behind caddy reverse proxy (also as container). For NUC itself I bough fanless case ---------------------------------------------------------------------- chapebrone · 2023-10-30 13:24 \+1 for Docker Compose. I recently swapped out the SSD in my NUC and it's so nice having the infrastructure as code. Downtime was no time at all. ---------------------------------------------------------------------- Beastmind · 2023-10-30 13:47 Nah, def going Debian over Ubuntu ---------------------------------------------------------------------- Proximus88 · 2023-10-30 14:10 I have a 5 bay Synology with HDD's in raid. On the NAS is all my data and media. Then on my NUC (i7 10th gen) I installed Ubuntu server and there I run my containers. Setting up my docker containers with docker compose. If a container needs media or important data access I mapped it through nfs to my NAS. Example for plex: ``` volumes: plex-series: name: plex-series driver: local driver\_opts: type: nfs o: nfsvers=4,addr=,rw device: ":/volume3/Media/Series" plex-movies: name: plex-movies driver: local driver\_opts: type: nfs o: nfsvers=4,addr=,rw device: ":/volume3/Media/Movies" ``` ---------------------------------------------------------------------- dazchad · 2023-10-30 14:18 I don't think you are missing anything. Ubuntu is popular, and generally more turnkey (drivers, recent packages, etc). Any distro would work. ---------------------------------------------------------------------- kon_dev · 2023-10-30 14:56 I would go with proxmox on the host as it allows you to quickly try out new things without messing up your main production server. It also makes backing up entire systems quite easy compared to bare metal. In proxmox you can still host a debian/ubuntu VM and use docker composed, KVM does not have that big of an overhead that it would be a problem for most homelab use cases. Also, driver support in proxmox is quite good as it uses Debian under the covers, you could also run e.g. docker directly on the hypervisor, if you don't mind the lack of isolation. ---------------------------------------------------------------------- root-node · 2023-10-30 15:04 I have 3x NUCs. 2x are running VMware ESXi and one is running Debian with Docker. ---------------------------------------------------------------------- Kindly-Fruit3788 · 2023-10-30 15:55 As a proxmox Server ---------------------------------------------------------------------- darksoulflame · 2023-10-30 16:09 Actually I’m wondering the same thing I have a QNAP nas running my stuff. I’m wondering if I get a NUC would I just need to transfer the VMs on the NUC? ---------------------------------------------------------------------- spicy45 · 2023-10-30 16:13 Seedbox - I5,4GBRam,500GBssd, ---------------------------------------------------------------------- Nintenuendo_ · 2023-10-30 17:04 I run everything forward facing from it, and built a nifty website as a front end. https://nintenuendo.tv Everything including the nginx web server configures from a docker- compose yaml. There is a wireguard service running as well. Very handy! ---------------------------------------------------------------------- dryEther · 2023-10-30 17:23 I use them as docker on windows(they came with W10). One is mostly for plex with ARR stack on a remote location. Another is for Nextcloud and other utilities in another remote location. Plus both keep data backup(3-2-1) of each other. ---------------------------------------------------------------------- BungleItUp · 2023-10-30 17:38 Yup, Ubuntu Server (Headless) and even if you use Windows as a daily driver you can install the Windows Terminal app from the Microsoft Store and create an SSH profile for super easy access. Then install Docker, Docker-Compose, and the first container you launch I'd recommend to be Portainer, because once you start getting containers running, you're gonna love them, and you're gonna want more of them. Being able to easily manage them from the get go is going to be super beneficial in the long run! And almost everything is containerized now and can be found on Docker- Hub. Just brush up on NGINX to reverse proxy into the containers and you'll be golden to host your streaming Jellyfin server, Nextcloud, Joplin Note Sync, Ferdium, and tons of other awesome web apps! I even run a Dockerized Minecraft server! ---------------------------------------------------------------------- CptDayDreamer · 2023-10-30 17:43 Ansible? Or how exactly as code? Just the compose files? ---------------------------------------------------------------------- Tenshigure · 2023-10-30 17:47 It’s just the most familiar distro with a ton of guides to get you off the ground, and once it’s up and running there’s really no reason to keep messing with works. I’ve got most of my stuff in docker now so my needs aren’t OS dependent (ran off of Unraid which itself is running on Slackware), but when I set up different dedicated Linux servers, Debian is my go- to. Ubuntu got too far up its own ass with features nobody asked for that it’s been far better to go back to basics for me. ---------------------------------------------------------------------- RF_Tim_H · 2023-10-30 17:56 Arch + Docker. I run my AdguardHome install on my two 8th gen Intel NUCs which in turn work as my internal DNS. Also can run Emby with transcoding with no major problems for me. ---------------------------------------------------------------------- dsandhu90 · 2023-10-30 18:32 I always have this question in my mind, so all the apps have their container version what if some app does not have it’s container version what to do in that case ? ---------------------------------------------------------------------- DeadOfKnight · 2023-10-30 19:13 You install the old fashioned way, no big deal. ---------------------------------------------------------------------- RB5Network · 2023-10-30 19:16 What the fuck lol. Smart, but wtf. ---------------------------------------------------------------------- _newbie2003 · 2023-10-30 19:49 Thank you everyone for the insights and sharing ideas. Much appreciated selfhosted family. ---------------------------------------------------------------------- ElevenNotes · 2023-10-30 21:37 What do you want to know? Its two NUC and a NAS with a UPS that charges when the engine runs. WAN while traveling is provided by a 5G modem and while at home via Wi-Fi. ---------------------------------------------------------------------- RB5Network · 2023-10-30 21:46 That’s awesome. I’ve heard of travel routers but not mobile homelab/NAS. You running the NUC’s as a dual K/Proxmox cluster? ---------------------------------------------------------------------- ElevenNotes · 2023-10-30 21:49 No, they are both Alpine Linux as read-only (in-memory OS). I run a few containers. A Plex with the NAS is for the kids so they can watch films and TV on very long trips (I setup Wi-Fi in the car). The system is portable and supports multiple uplinks so you can take it to a hotel or rental or whatever. ---------------------------------------------------------------------- DeadOfKnight · 2023-10-30 22:43 I have it running Unraid with docker containers. I already have a NAS as well, but I find Unraid to be very user friendly for just running self hosting services, with great community support. I know I could just run Linux with docker, but that’s what I already do on my Raspberry Pi. ---------------------------------------------------------------------- reklis · 2023-10-30 23:27 I started with promox but then I got fed up with it. Switched to bare metal and running k3s and docker compose and I’m much happier now. ---------------------------------------------------------------------- ds1080 · 2023-10-31 02:05 You could always make a container ---------------------------------------------------------------------- AuthorYess · 2023-10-31 05:56 I've already outlined the benefits which are also benefits for k3s and other similar software. Many homelabs use a lot of custom solutions to get around aging hardware or to fix specific issues they have. So if you're having trouble with passthrough then so be it, but new hardware generally doesn't have that issue. At the end of the day: * Virtualization costs a fraction of a % on performance which is likely not being fully utilized anyway * Backups are much easier, meaning restore is fast. No need to rebuild your host and restore from cloud if you're doing it correctly. * Transferring to a new host is simple, copy/paste VM over * Easy to expand setup or test if needed Many of these are benefits of virtualization but you can do it easily with Proxmox or ESXi etc., over other options like simple kvm on ubuntu for example. ---------------------------------------------------------------------- BungleItUp · 2023-10-31 15:56 Depending on what the app is, some apps work perfectly fine along other apps when they're installed on the primary OS. The problem I run into is when conflicting apps start wanting to use the same ports for different things. Some apps are good at letting you change what port they use, but some don't. Especially some apps that want to dominate port 80 and 443. Containers make dealing with apps like that really easy because you can re-map the port to a different port and reverse proxy to them. But if no container exists and you still want to use an app that requires sole access over port 80 you have other virtual options. Making a container is a thing, but so is setting up a separate virtual Linux instance inside of Linux using something like virtualbox. A full VM environment is going to use a lot more resources than a container, so you have to make sure your host machine is powerful enough to run everything. But I've definitely done that several times with apps that require more complex integration with the OS without having to dedicate the entire machine to that app. And then you can assign the VM it's own IP and still reverse proxy into it just fine. ---------------------------------------------------------------------- _newbie2003 · 2023-11-08 15:07 Can you share more on your setup? How do you have auth setup if any github repo or any boilerplates etc. That'd be amazing. Thank you again. I loved it. ---------------------------------------------------------------------- Nintenuendo_ · 2023-11-08 22:01 Hey, sure no problem. Every service is hosted in a docker container. The website is pure html/css designed by me, so there are no boilerplate templates I can give you, but there are a lot of starting points out there for that side of things. The web server is a containerized version of nginx, more specifically the "[Swag](https://github.com/linuxserver/docker-swag)" container over at Linuxserver.io. This version of the web server automates your SSL certificate grabs with certbot, and cronjobs them for auto- renewal. This is also how I handle control the subdomains for each seporate individual service (plex/znc/sonarr..etc) For authentication you can use lots of methods (ldap, authelia..etc), but I personally use a basic htpasswd based login, since this is the only place the user credentials will work, I don't need to use a whole service for it. htpasswd is great and super easy to work with to decide who can log in to where. The rest is just simple docker networking (handled mostly automatically by launching from a common yaml) and a little web knowledge. For example I host this website at my home, so in order to hide my home IPv4/IPv6 from a whois or any visitors, I put my dns behind cloudflare, which works great! If you have any specific questions feel free to hit me up! ---------------------------------------------------------------------- _newbie2003 · 2023-11-09 00:31 Thank you so much, I love the simplicity of it. Have you experienced any DDoS or any other attacks? My guess is fail2ban in swag would take care of it. Just curious about your experience in any DDoS situations. ---------------------------------------------------------------------- Nintenuendo_ · 2023-11-09 03:45 Actually the beautiful thing, since I'm behind cloud-based for my dns, cloudflare handles any ddos attacks and even has a toggle switch I can activate in my dashboard that manually sets it to "under attack" mode. It's all included in the free tier, so doesn't cost a penny. They do that so that you naturally use them for any additional services since your website is already being cached on cloud flare servers, might as well use them for everything. ---------------------------------------------------------------------- _newbie2003 · 2023-11-09 12:06 That's incredible. Do you mind sharing your GitHub and template for the site? I remember you mentioned, you worked on this frontend and there is no template. Do you think it can be converted into template and share your configs as boilerplate for inspiration? Its your decision, no matter what, I respect that. Thank you again for the enlightenment. ---------------------------------------------------------------------- Nintenuendo_ · 2023-11-09 20:26 Sure, I don't mind at all giving you the site to edit and use on your own, in fact I'll even help you set it up if you want (if you're not too familiar with html/css). I'll even help you setup nginx, cloudflare, and how to subdomain them properly and securely if you're up for it. It really is an amazing skill to have to be able to securely access your stuff, and you learn a lot of cool shit you can use later for other projects. Feel free to send me a private message here to suggest a method of private communication, I personally use IRC a lot but anything is good with me :). Have a great week! ---------------------------------------------------------------------- _newbie2003 · 2023-11-11 15:38 Thank you, sent you DM. 🙂