9 ms·
Intel NUC as a back end for development
- simplecto 6y agoThanks to the author who took the time to write up his/her experience with this way of working. My macbook pro 2015 struggles to keep up with docker, pycharm, zoom, outlook, and slack during the workday. Maybe it is time to burn a weekend to trying out a setup like this.
- dayjah 6y agoThis is exactly how I found myself building a homelab! I first upgraded the SSD in my MBP-2015 and that gave me a bit of relief, but I soon started running into RAM limits and swapping. So I bought a beefier NUC (Ghost Canyon) and run ProxMox on it. I setup a NFS server in an LXC container, and then a typical VM for development[1]. In all it took me a couple of weekends to really get things dialed in nicely. ProxMox is great, I really love that I can provision and throw away instances quickly! It makes for less variance in trying to establish what made thing X work suddenly. [1]: I need kernel modules and the guest to have access to USB for my dev
- tecleandor 6y agoDo you do remote desktop or an vscode-remote-over-ssh equivalent?
- dayjah 6y agoI've recently gone back to vim in tmux on the remote host over SSH. I had good success with using vscode-remote-over-ssh too.
- whalesalad 6y agoNetwork latency would be a dealbreaker for me here. I’ve tried this style of development but it’s tough to keep a local and remote directory sync’d at a high frequency with low latency. I do think this should be the goal of all of us though. I’m slowly shifting more workloads off my Mac and to local lab boxes. I’d actually like to build a product in this space but I’m still trying to crack the latency nut.
- dayjah 6y agoI’ve been tackling that recently. In my case my nuc and my “terminal” are connected via 1Gbps Ethernet. Vim in tmux was terrible; line by line scrolling was very jittery. Witching off font ligatures meant the GPU was able to handle rendering and now everything feels really smooth with multiple vim panes open. Prior to moving back to terminal based editing I was very much in the same spot as the OP, using VSCode - I didn’t notice any form of latency with that setup.
- jimpudar 6y agoHave you tried mosh [0]? I've done remote editing in tmux + vim from a plane without too much grief. [0] https://mosh.org/ https://mosh.org/
- dayjah 6y agoI was really impressed with mosh when I used it a few years ago. In this case SSH is going 20ft or so over ethernet, so the aspects that mosh pushes hasn't been necessary.
- jamesmishra 6y agoIf your laptop and your NUC are on a local area network, the latency doesn't have to be so bad. I have an Intel NUC and I bought a Thunderbolt 3<->10gbps Ethernet adapter. Then I bought another adapter to plug into my MacBook Pro and a 10gbps desktop switch to connect them.
- lostlogin 6y agoThis is the way - however the network side of it could easily end up costing more than the Nuc, as 10gbs equipment (switch in particular) is expensive.
- deleted 6y ago[deleted]
- 6y ago
- yellow_lead 6y agoI'm a fan of these NUCs too and I use one with Kodi for my media setup. The only thing I'd mention that I didn't see in the article is that not all NUCs support linux out of the box. In fact, I had to update the Bios due to a bug where linux would periodically freeze. Afterwards, it works great though.
- cpach 6y agoKodi seems very solid. What do you use for storage though? Can the NUC host a large SSD/HDD?
- dayjah 6y agoIn a Ghost Canyon nuc I have 2x2Tb NVMe SSDs (Samsung 970 IIRC); for my use (VMs) they’re great.
- cpach 6y agoOh. That’s pretty beefy considering the neat form factor.
- lostlogin 6y agoNot OP, but I mount a NAS via smb for a Plex server. Performance is fine as long as it has enough RAM.
- poisonborz 6y agoThere are a lot of different mini cases that can house even multiple M.2/2.5"/3.5" devices.
- tuananh 6y agoNUC is pretty awesome little machine. I mostly use NUC and raspberry pi for my homelab (https://i.imgur.com/AHcuq6n.png https://i.imgur.com/AHcuq6n.png) and it works great. very minimal power footprint. for my development machine, i use a deskmini x300 with AMD processor. powerful stuff.
- simlevesque 6y agoThe Asus PN50 looks like my dream machine. It is always out of stovk everywhere.
- poisonborz 6y agoI can confirm it's awesome :) Maybe try ordering from Europe, I didn't see stock problems anywhere here (some reverse taxing would apply sadly)
- ismaildonmez 6y agoI only see in Austria and they only ship to... Austria.
- mrweasel 6y agoI have a NUC, but I don't use it, because the fan is insanely loud. Have anyone had any luck finding NUC replacement fans?
- missblit 6y agoI use a NUC as an HTPC, and benefited a lot from tweaking the fan settings in the BIOS. I got it to the point where it's silent when watching a movie or something, and only noisy when under real load.
- Audiophilip 6y agoWell, not replacement fans, but a replacement case: I bought the Akasa Turing fanless case [0] for my NUC and couldn't be happier. I like the new looks, too. [0] https://www.anandtech.com/show/16191/akasa-turing-fanless-case-review-noiseless-nuc-nonpareil https://www.anandtech.com/show/16191/akasa-turing-fanless-ca...
- khass 6y agoGot a replacement fan from Ebay from a seller in China, replacing the fan was a little bit harder than the youtube tutorials but it worked in the end. I used my nuc as a server 24/7 for an year before the fan started failing and now it works just as fine as before.
- isoprophlex 6y agoThe default fan settings of those nucs are dumb. You want to set the cpu total power draw a bit lower, the fan onset temp lower (i know, sounds paradoxical) and the ramp rate in %fan/degree lower. This means: - cpu runs less hot at some performance hit. You'd have to be able to live with that. Maybe this works without reducing power draw (I'm neurotical about components getting too hot so I happily accept that) - fan starts spinning sooner, but slowly, before things get too hot - fan doesn't abruptly start making noise upon heat increase
- sys_64738 6y agoMess about with the fan profile in the BIOS. That's what I did and you can make it less loud.
- anonu 6y agoI love the Intel NUCs - I have a couple. But the graphics driver +Windows 10 has been horrible with high-res monitors. On sleep all the windows get resized and moved over to the corner.
- mrspuratic 6y agoWin10 "feature". I have two DP monitors, if I turn one off the desktop reorganises itself as though it's a completely dynamic configuration. Why turn off? Because sleep is unstable and blue screens about 1 time in 10 with some power watchdog timeout nonsense. In the background I run Slackware on a dual-HDMI NUC7, same screens (VESA mounted on the back of one) - no problems there.
- xmichael0 6y agoReally this article should have been about using a server and the VSCode SSH module. This component is the star of the show https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-ssh https://marketplace.visualstudio.com/items?itemName=ms-vscod...
- avolcano 6y agoI've been interested in doing something like this ever since VSCode remote work has become stable. My main side project right now is a Kotlin backend, so I'm waiting for IntelliJ's very-very-new remote features to get a bit more robust (they just added some abilities for WSL and run targets on remote platforms in early access, but I think you still can't e.g. run your IDE's analysis engine on a remote box and avoid local builds entirely yet). That said, if you're able to live entirely in VSCode & command line, you'd be all set here. It really is wild how the VSCode language server architecture enables all this, btw. I'm not sure whether this was an intentional goal of the LSP when they started working on it, or if it was originally just to keep the language analysis in a separate process and this wound up being a nice benefit, but being able to run all of your editor's language features on another box and just use the editor as a dumb client for them is brilliant.
- dsissitka 6y agoHave you seen Projector? That seems to be their alternative to VS Code's remote development stuff.
- 908B64B197 6y ago> That said, if you're able to live entirely in VSCode & command line, you'd be all set here. You can always mount your remote filesystem on your local machine for the few tasks that are not convenient to do in the editor or terminal.
- gegtik 6y agoI have a friend of mine who swears by x2go to further streamline this kind of "remote" dev
- deedubaya 6y agoThis looks pretty good! Thanks for sharing!
- zhaphod 6y agoProblem with NUCs is the thermal limitation.
- happycube 6y agoI'd use a small OEM box myself: https://www.servethehome.com/introducing-project-tinyminimicro-home-lab-revolution/ https://www.servethehome.com/introducing-project-tinyminimic...
- nickthemagicman 6y agoThis is a great write up!
- rektide 6y agoServeTheHome has a long history of spilling the beans on the best value secrets on the planet, on knowing where to look for the best second-hand gear. A couple years ago the Dell & Supermicro FatTwin2's were all the rage... I may have been one of the folks doing that too. There was no place else like it, reviewing & looking not only at new products, but the most sensible purchases. It's a treasure of a site, such a rare realistic home-operator wallet-conscious view of things. Although a lot of the coverage now is more "regular" these days, there are reviews of all sorts of low & mid range products, & things like add-on drive bays that the at home systems cobbler would be interested in. Sometimes things like this Project TinyMiniMicro 1L mini-pc series come along & write up all the really smart really sharp things folks have been doing for a while time, really show/reveal the secret undercurrent that pulls so many. I sometimes worry that Patrick is spilling the beans, that he'll turn too many people on to the great deals & they'll stop being so great. The good thing about these business mini-pc's is that they are used in countless businesses, which is why they are so radically much better value than the imo way way over priced barebones mini-pc's that I used to oggle. It's also nice to see the range expand- new Ryzen offerings are exciting (if expensive), and higher wattages (more oomph) are both new.
- drewzero1 6y agoSome years ago I picked up an old HP thin client that was essentially one of these mini boxes, popped in a mini-IDE SSD and maxed out the processor and memory. Set it up to try out CentOS and ended up using it as a small home server for a few months. I love this form factor, and the next time I'm in the market for a home server it's going to be my first choice.
- auraham 6y ago> Intel NUC has official Ubuntu support, so it’s not a surprise (unlike some of my experiences using Linux on Desktop as I’ve mentioned before) I was about to ask about Ubuntu support, good to know those machines are compatible with Ubuntu.
- lostlogin 6y agoThey work great. I run several machines on top of ESXi and it’s rock solid.
- kodah 6y agoWhy stop there? I run a Hades Canyon NUC that costs about as much as a laptop and is strapped to the back of one of my monitors. It's by far the most stable development machine I've ever used and comes with more resources than average machines of the same cost.
- maxbaines 6y agoSimilar setup but use a Lenovo P330 Intel i7-8700 picked up on ebay £500 wih two year warranty https://www.lenovo.com/gb/en/workstations/p-series/ThinkStation-P330-Tiny/p/33TS3TP330X https://www.lenovo.com/gb/en/workstations/p-series/ThinkStat...
- I_am_tiberius 6y agoI gave mine up (NUC10 i7) because it was so terribly noisy. Switched to a Lenovo t14s which I don't notice during work.
- lostlogin 6y agoI wonder if this was a faulty unit? Mine is silent, though the grinding drives on the NAS might be masking it.
- Symbiote 6y agoI use an Intel NUC as my main home computer. I bought a fanless case [1] and VESA-mounted it to the back of a 4K screen. It has a good SSD, 64GiB RAM and Kubuntu. I had to buy a heatsink for the SSD to avoid it overheating without any fans around. > every time I try to use [Linux] on desktop … - I get a frustration since it has all the similar issues I was facing many years ago, which require some time to fix and I am way too lazy for that already I don't understand this. He fixed the CPU scaling issue, and there don't seem to be any others. [1] http://www.akasa.com.tw/update.php?tpl=product/product.list.tpl&type=Chassis&type_sub=Fanless http://www.akasa.com.tw/update.php?tpl=product/product.list....
- bombcar 6y agoServe the Home has been reviewing these and other tiny computers: https://www.servethehome.com/introducing-project-tinyminimicro-home-lab-revolution/ https://www.servethehome.com/introducing-project-tinyminimic... Lots of power in very small space is available now.
- dekhn 6y agoI've got a bundle of NUCs. I love and hate them. I have mostly replaced them with Raspberry Pis, which are cheaper and have a number of other advantages. The problems I've had are: over time, the fan decouples from the processor and the machine runs super hot. Ubuntu always enables wifi power saving,w hich causes huge ssh latency problems. The SD card won't boot. The cheaper ones are slow, to get good performance you have to spend at least $500. One interesting note: although they come with 19V power supply, they work fine on 12V.
- greenie_beans 6y agothe SD card problem was enough for me to move from RPI to NUCs
- dekhn 6y agoI don't have any SD card problems with pis any more. That is, I haven't seen any SD corruption in over a year in ~5 Pis, and other things about the pis have failed more frequently.
- bullen 6y agoI used D510MO as desktop during 2 years. It was the best thing I have done, but you have to be able to use your own lightweight tools; NUCs are too weak for for regular setups. Also you need a passive case and streacom stopped making those.
- philliphaydon 6y agoWhat about something like the Asus Mini PC PN50???
- bullen 6y agoI think Ryzen is a tad more energy hungry also this seems actively cooled. So no.
- philliphaydon 6y agoThe new Ryzen ones are 4000 series and based on reviews are pretty quiet and pretty powerful. I'm prob gonna pick up a 4800U variant in Taiwan.
- notsureaboutpg 6y agoMy new company shipped me a Macbook for development. Prior to this I've only used Linux and never had a problem running multiple docker containers or with SSD longevity (my Linux laptop is 8 years old at this time and runs amazing, parts are easily replaceable but nothing is close to dying). Should I consider this for work? Thoughts?
- xaduha 6y agoCompute Element is basically the main reason KFC 'console' is even a thing and it keeps flying under the radar, even this blogpost is about old-ish NUCs as I understand it.
- einpoklum 6y agoIntel NUCs are quite overpriced, and many have the loud fan issue other users have mentioned (and the OP alluded to). That post says they went with NUC over other options - integrated SFF PCs from other vendors or build-your-own - because it "looked nice" and was available. It cost him 1,016 USD to get an i7 gen-10 NUC, memory, and an SSD. Quite pricey IMHO. So I'd say this doesn't make much of a case for NUCs (pun not intended) in particular; just for using SFF PCs.
- lostlogin 6y agoThe power brick is a big downside in my opinion. It’s large and untidy. The Mac mini integrating it makes it very attractive, with a steep price.
- nsxwolf 6y agoI use this setup for work but "use laptop as a thin client" is where it all falls apart. I have never got remote code editing to work reliably. VSCode's SSH plugin works great until it doesn't, and you lose work. I just remote into it and edit all files locally, and deal with the latency and screen painting.
- syntaxing 6y agoI’ve searched everywhere for a mini-PC that can fit a small GPU (GTX-1050) and runs Ryzen-5. Any suggestions?!
- elitepleb 6y agoa GPU leaves the mini territory, and turns it into a small form factor due to the power requirements. You'd have to build one yourself from parts, or order one custom from a non EOM company. Since most OEM small form factor pc's skimp on the PSU and vertical space heavily.
- poisonborz 6y agoAs other commenter said, you have to build this - but there is a huge amount of options in terms of cases and available chipsets. But what do you need the GPU for? If it's not mid-high end gaming (and with 1050 I guess not) then you're better off with embedded GPU anyway.
- ilaksh 6y agoLook into the latest APUs built in graphics. They are actually very good. Totally different from the old intel integrated graphics which are garbage. On AMD integrated graphics is actually useful these days.
- Const-me 6y agoNice article, albeit the setup won’t work for me, need fast local GPU. One minor nitpick. > Cannot replace CPU in case of a failure, since it is SoC (system on a chip) Unlikely to happen, CPUs are very reliable in my experience. However, motherboards do fail. Over the last 10 years, I have replaced failed desktop motherboards twice. I was lucky I was able to keep the old CPUs.
- ilaksh 6y agoDeskMini X300 with AMD Renior has a decent GPU.
- Const-me 6y agoBy “workflow” I meant the remoting part. The SFF is fine, I’m currently using a PC I’ve built in Node 202 case: https://www.fractal-design.com/products/cases/node/node-202/black/ https://www.fractal-design.com/products/cases/node/node-202/... Too bad I’m unable to upgrade 1080Ti with 3080, due to the global GPU shortage.
- sto_hristo 6y agoIf you're in the mood, setting up a custom built PC and throwing it in the closet labeled as 'server' is a far better option as that gives you access to total customization and max performance. SSH into via VSCode and you're flying into the future.
- nickthemagicman 6y agoI have a NUC that I run proxmox on and have several machines spun up inside of it, connected to a synology NAS. I think I spent 1500 bucks on the system total, and for an equivalently priced AWS system would have been hundreds of dollars a month, so I feel like it's paying for itself. Only downside is the local internet provider only offers 5Meg upload, so I'm not going to be serving any high traffic websites, but for everything else is great.
- ngcc_hk 6y agoLinux not work well with egpu. I switch back to w10.
- poisonborz 6y agoInstead of the technically rather outdated NUC models, I would suggest anyone interested in looking into Ryzen 4xxx/5xxx-based systems (laptop chipsets). The price/performance is way better, and the embedded Vega 7/8 blows any Intel out of the water - they can power 4x4K@60Hz or 1x8K@60Hz. Some example models are the Asus PN50, Gigabyte Brix.
- joecot 6y agoI've used 2 different generations of Intel NUCs as home servers for running VMs and a media server. This time around I got an Asus PN50 and I'm quite happy with it.
- ilaksh 6y agoI have an tiny DeskMini used as a desktop replacement for two years. Works great. I am assuming they have something similar now for the new chips?
- deleted 6y ago[deleted]
- lostlogin 6y agoI’d love to get away from Intel. However their proprietary Quicksync allows very efficient video transcoding and is basically the only feature that keeps me with Intel.
- mamcx 6y agoWhen I get a MacBook M1 I also ponder what to do for stuff that need to run on windows and use something similar: https://www.lenovo.com/us/en/desktops-and-all-in-ones/thinkcentre/m-series-tiny/ThinkCentre-M75q-Gen-2/p/11TC1MTM7G2 https://www.lenovo.com/us/en/desktops-and-all-in-ones/thinkc... I found it fairly good with decent performance.
- nikon 6y agoRunning an ASRock DeskMini with an i9 & 32GB RAM. VSCode remote works well with it. It barely uses 8GB of RAM. Added 8TB of storage for a Plex server too. Combined with Tailscale[0] you can access anywhere in the world, too. [0] https://tailscale.com/ https://tailscale.com/
- davidbanham 6y agoI do this with a Linode machine. My development is done in vim through mosh and the latency surprisingly isn’t an issue. It’s amazing how many problems just vanish with this setup. Backups are totally automated and a restore is a single click. No fussing with network tunnels for webhooks from Stripe. Downloading dependencies or uploading artefacts is super fast because I’m on a data center connection to the internet. When I’m accessing my dev environment it’s from a browser on my thin client so I never hit those weird CORS differences between localhost and a real domain.