Ancestors

Written by Passerby6497@lemmy.world on 2025-01-05 at 01:58

Is it possible to run a docker host that has no harddrive?

https://lemmy.world/post/23894555

=> More informations about this toot | More toots from Passerby6497@lemmy.world

Toot

Written by Scrubbles on 2025-01-05 at 02:11

Kind of, but probably not. I started writing this and was like “totally it could be stateless”. Docker runs stateless, and I believe when it starts it is still stateless (or at least could be mounted on a ramdrive) - but then I started thinking, and what about the images? Have to be downloaded and ran somewhere, and that’s going to eat ram quickly. So I amend to you don’t need it to be stateful, you could have an image like you talked about that is loaded every time (that’s essentially what kubernetes does), but you will still need space somewhere as scratch drive. A place docker will places images and temporary file systems while it’s running.

For state, check out docker’s volume backings here: docs.docker.com/engine/storage/volumes/. You could use nfs to another server as an example for your volumes. Your volumes would never need to be on your “app server”, but instead could be loaded via nfs from your storage server.

This is all nearing into kubernetes territory though. If you’re thinking about netboot and automatically starting containers, and handling stateless volumes and storing volumes in a way that are synced with a storage server… it might be time for kubernetes.

=> More informations about this toot | More toots from scrubbles@poptalk.scrubbles.tech

Descendants

Written by umami_wasabi on 2025-01-05 at 02:15

I guess you can also use NFS/iSCSI for images too?

=> More informations about this toot | More toots from umami_wasbi@lemmy.ml

Written by ddh on 2025-01-05 at 11:15

Correct, I run docker on a compute host that has no local storage. The host’s disks are on iSCSI LUNs.

=> More informations about this toot | More toots from DarkDarkHouse@lemmy.sdf.org

Written by Passerby6497@lemmy.world on 2025-01-05 at 12:25

That’s really good to know. Do you ever have issues writing database files on those disks? Database files on nfs mounts have been the bane of my existence.

=> More informations about this toot | More toots from Passerby6497@lemmy.world

Written by ddh on 2025-01-06 at 05:56

FWIW I run only very small databases e.g., sqlite ones shipped with applications, but haven’t had any problems in about a year now, and nothing that wasn’t recoverable from backup.

=> More informations about this toot | More toots from DarkDarkHouse@lemmy.sdf.org

Written by Passerby6497@lemmy.world on 2025-01-05 at 02:35

So I amend to you don’t need it to be stateful, you could have an image like you talked about that is loaded every time (that’s essentially what kubernetes does), but you will still need space somewhere as scratch drive. A place docker will places images and temporary file systems while it’s running.

Putting the image somewhere is easy. I’ve got TBs of space available on my NAS drives, especially right now with not acquiring any additional linux ISOs.

For state, check out docker’s volume backings here: docs.docker.com/engine/storage/volumes/. You could use nfs to another server as an example for your volumes. Your volumes would never need to be on your “app server”, but instead could be loaded via nfs from your storage server.

I’ll check that out. If that allows me to actually write databases to disk on the nfs backing volume, that would be amazing. That’s the biggest issue I run into (regularly).

This is all nearing into kubernetes territory though. If you’re thinking about netboot and automatically starting containers, and handling stateless volumes and storing volumes in a way that are synced with a storage server… it might be time for kubernetes.

I don’t think I’ve ever looked into kubernetes. I’ll have to look into that at some point… Any good beginner resources?

=> More informations about this toot | More toots from Passerby6497@lemmy.world

Written by Scrubbles on 2025-01-05 at 07:34

Personally I suggest k3s, setting up a test cluster and playing with it. For volume management I use longhorn. It’s a HUGE learning curve, but it’s officially something companies will shell out big money for too if you’re willing to learn it. Soup to nuts from setting up test cluster and playing with it all the way to all of my services running was about 4 months of tinkering for me- but I’ll never go back

=> More informations about this toot | More toots from scrubbles@poptalk.scrubbles.tech

Written by sugar_in_your_tea@sh.itjust.works on 2025-01-05 at 04:03

Yeah, a PXE boot should work, but you’d need a ton of RAM (I’d double to 32GB for Frigate). Drives are cheap, I’d just get one and not deal with network booting at all.

=> More informations about this toot | More toots from sugar_in_your_tea@sh.itjust.works

Written by Scrubbles on 2025-01-05 at 07:33

Exactly. Hell 50 bucks you can get a decent SSD. Just grab something, have all of your drives hosted via NFS, but then you aren’t hacking docker to run in ram all the time, and wasting your ram hosting stuff it doesn’t need to

=> More informations about this toot | More toots from scrubbles@poptalk.scrubbles.tech

Written by Passerby6497@lemmy.world on 2025-01-05 at 12:27

Hell 50 bucks you can get a decent SSD.

If only it were that easy, I would have already thrown a spare 2.5" into the system, but it’s only got a single nvme slot for local storage.

=> More informations about this toot | More toots from Passerby6497@lemmy.world

Written by sugar_in_your_tea@sh.itjust.works on 2025-01-05 at 14:36

You can get an NVME drive for <$50, in fact I saw a 128GB one online for ~$15 from a reliable brand (Patriot).

=> More informations about this toot | More toots from sugar_in_your_tea@sh.itjust.works

Written by Passerby6497@lemmy.world on 2025-01-05 at 18:32

That’s actually doable. Thanks for that friend.

=> More informations about this toot | More toots from Passerby6497@lemmy.world

Proxy Information
Original URL
gemini://mastogem.picasoft.net/thread/113773319479634622
Status Code
Success (20)
Meta
text/gemini
Capsule Response Time
297.58226 milliseconds
Gemini-to-HTML Time
3.742823 milliseconds

This content has been proxied by September (3851b).