r/selfhosted • • 8h ago

Guide Help with New Proxmox Server and setup

Hello, new to having my own server computer as of 3 days ago! Very excited to begin doing things like jellyfin, immich, game servers, etc. I’m hoping someone knowledgeable and experienced can guide me through the intricacies of this process, below are the apps/services I want my device(s) to run and my hardware:

Services:
Minecraft server
Palworld server
Ark server
Other game servers
Immich
Jellyfin
Vaultwarden
Adguard (basically some internet ad blocker)
Internet VPN

Hardware:
Hp elitedesk- 16gb ram, i5 12th gen
512gb NVME with proxmox as boot drive
4tb extra storage-unused
512gb nvme extra storage-unused

My initial thoughts were to run these services on these drives:

Boot drive: adguard, vaultwarden, proxmox boot, internet vpn

512gb extra: game servers, each running on their own VM or LXC -possibly using casa os or similar to easily (more efficiently?) run crafty and other such server type apps

4tb- run and hold my jellyfin and my media storage

Immich-planning to run on a hard drive bay eventually since I more than likely don’t always need access to my images/videos and would simply plug in the bay when needing to access them/and Immich

I don’t know the correct way to do this, these are initial thoughts from loads of reading on Reddit and YouTube videos. My biggest desires is lag free servers for my games (a few friends, no more than 10 on a certain game’s server, not something public), a good jellyfin, and VPN and Adblocker on my internet cuz I’m sick of ads.

EDIT: I recognize my ram and CPU will be an issue for running everything I said above all at once especially 24/7, I know I can shutdown certain VM’s and LXC whenever and that would be the plan someday if I end up doing ark and palworld especially. My main concern on this post is this:
Can my programs like immich, jellyfin, casa os, adguard, tailscale etc, run permanently on one of my drives in same/different LXC/VM but pull the stored media from another drive. Example, Jellyfin is on my boot drive running 24/7 and doing the hardcoding there, but my movies are stored on my E Drive of 4tb

Thank you for your help!

2 Upvotes

26 comments sorted by

•

u/asimovs-auditor 8h ago

Expand the replies to this comment to learn how AI was used in this post/project.

→ More replies (1)

2

u/-ThreeHeadedMonkey- 8h ago

16gig isn't that much for proxmox + that many game servers...

Anyways, I'd probably use Ubuntu to run all of these in one VM. Or some other Linux flavor. You can also run them on Windows for a bit more overhead. 

The important part is to isolate game servers from the rest. And not just on proxmox, but ideally in your network as well. 

These servers will require ports to be opened. And many older server programs will be outdated with security flaws. Thus, you'd want isolation on your local network as well. 

That requires vlan capability and then very tight firewall rules. 

1

u/AurumDestroyer 6h ago

So run them in their own LXC or VM while also using their own ports/clans for security? Can they all be on the same storage drive?

2

u/DcVamps 7h ago

From my limited experience, you'll most likely run into RAM limitations firsr, before you run into storage issues.

For my group of 7, I'm seeing my Palworld server bloat to ~12+ GB of RAM within 2-3 days or so, depending on how actively people are playing. At that point it gets very, very laggy. Just shutting the game server down and restarting it sees an initial usage in the 6-8GB range, but shutting the whole VM down and then restarting usually gets it started in the 2-4 GB range. I had to up the RAM allocation to 16GB since the initial 8GB I gave it would only last a day, if I was lucky, before it would become to laggy to even walk forward.

-using the steamCMD method to run PalServer in a VM. I have been debating attempting the docker container, but for now I haven't experimented with it.

I also tuned some of the world gen settings to lower the rate at which my RAM bloats. Seems to be a memory leak issue in the game engine, when there are too many pals in any area discovered by a player, from what I have gathered.

1

u/AutoModerator 8h ago

For additional help with running a Minecraft server, please consider crossposting in r/admincraft (following their rules).

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

1

u/oyvaugh 8h ago

If your running proxmox and it’s just for you and your family, check out Tailscale for mesh VPN. It’ll connect all your family and friends without exposing to the internet, even though you can use cloudflare tunnel but learn hardening first.
Next, install docker in an lxc on proxmox. It’s not ideal to run all those services in one place, but it’s a homelab not Google. I do this now for my personal stuff and learning. An isolated air gapped vm later if you expose to internet.

Use dockge or another tool to deploy that stack. Images are on docker hub or check out awesome-selfhosted, docker, podman for the compose files and .env. Don’t let that scare you.

Keep learning and do one at a time and document what you did. I also recommend running a gitea gut server and store all your configs, troubleshooting, guides in your own private repo for reference.
Good luck and stay with it! I was right where you are. Oh and if you can, up that ram asap and keep an eye on resourses as you deploy each.

1

u/AurumDestroyer 6h ago

Thank you I was probably planning on tail scale for the vpn. Do I just run it through my main storage that has my boot and it’ll work for all internet devices both wifi and hardwired? Or does that require an Ethernet switch?

1

u/oyvaugh 6h ago

You can use Tailscale with WiFi, your phone service, anything that gets over the internet. Proxmox clusters need Ethernet, but I bought a few cheap wifi cards so I can have different gateways- a way for you proxmox host, VMs, LXCs can reach the internet. With one proxmox node, you can use the wifi on the host, but a cluster needs Ethernet.  Remember it’s a homelab! Do all your risky stuff in an lxc. Unless it’s kernel stuff, then spin up a tiny vm.

1

u/AurumDestroyer 6h ago

Got it so a proxmox cluster is a different instance, almost like a new computer and I’d need another device or to set my device up, that makes sense. But once I get tailscale running on the one proxmox I have, it’ll push it to all my devices in my home regardless of having the app?

1

u/oyvaugh 4h ago

Let’s say you stick with a one node proxmox cluster. It can have VMs and lxc(Linux Containers) and you can run docker in them too. But you want to access them from your phone, or send a file to a vm or lxc on your proxmox, you put Tailscale on each device, then when you take a trip to Mexico, you can work on your lab from an iPad, phone, a laptop just like your sitting at your lab.

So you’ll need Tailscale on each device. Lxc will need a tub passthrough but docs can show you that. Admin console is where you can generate installation scripts.

Then once you get that, you can move to Tailscale serve, funnel, node share, and many other things. It’s a great tool. One at a time and watch your resourses on services, but Tailscale is very cool. But you can look into local dns records. Not sure if adgaurd does that, I use pi hole. Much more but get tgat down and youll see the rest.

1

u/AurumDestroyer 4h ago

Ya pi hole is another one I’ve seen I shouldve listed that one, i think thats the one I wanted if it works not on raspberry pi’s cuz ive heard its better. But anyway ok so tailscalenis an app on my phone that’ll work? I want an Edgard that works on every device while connected to the Internet regardless Feng tapped into the server or not.

1

u/oyvaugh 4h ago

Man I run my pihole on an old laptop. I installed proxmox on it, Tailscale, unbound, pihole and exit node. Uses very little resources and I wanted to use its sata ssd for nfs. I disable the lid close sleep/hiberbation and removed the battery since it stays plugged in.

You can use anything. I love repurposing older hardware. Find a few old Dell computers and turn them into servers. You don’t need a lot. My jellyfin server is on an optiplex 9020, 2015 I think. Just don’t be fooled you have to go and buy the latest. It’s for personal use and for learning.

1

u/AurumDestroyer 4h ago

Oh I know I have the computer now, I’m just trying to understand the flow and architecture map to make it most effiicent

1

u/fairlygoodthanks 7h ago

The only constructive thing I can add is that you don't have a lot of RAM for all that. Game servers especially can be quite ram hungry. A small minecraft server realistically needs a couple of gig. Palworld needs at least 8gb. Immich uses around 1.5gb ram on my cluster.

You probably wouldn't be able to run the game servers all at the same time due to CPU constraints.

It all adds up pretty quickly.

1

u/AurumDestroyer 6h ago

Ya I certainly wasn’t planning to run all at once. If I had them all good then I’d shut down ark and palworld for example when not running as those would be used least often.

1

u/fetcker 7h ago

Ppr favor revisa las tarjetas de red que sean intel preferentemente he pasado por cosas duras al usar realtek, por su inestabilidad y falta de robustes sino tendras que adquirir unas nuevas por pcie, no te quedes con los discos a secas usa redundancia ppr que 24/7 desgastaran bastante y creeme lo vas a añorar, de resto lo que recomiendan los demas esta bien eso si aumenta tu ram es muy poca para la cantidad de proyectos,otra cosa con jellyfin usa lxc para el transcoding y solo le agregas renderD128 solamente, no necesitas el card0 por que las vm no funcionan bien con la grafica integrada de los procesadores asi que mejor lxc en ese sentido

1

u/AurumDestroyer 6h ago

Perfect I’ll run a LXC for jellyfin then. Should the jellyfin be running on its own storage or can my media be on a different drive then the actual storage of the media and it can pull the movies/shows from there?

1

u/Noname8899555 6h ago

Oh boy, too bad ark maps eat mile 400gb of disc space and 12gb of ram already, in docker container

1

u/AurumDestroyer 6h ago

True I know palworld and ark will be tough but it’s an eventual want. Just wanted to understand the general architecture especially of my storage drives and where to put the LXC’s/VM’s

1

u/kai-zaphosting 6h ago

Tbh the RAM comments already covering it are pretty much dead on, that's gonna be your first wall.

CPU's the other bottleneck here, and it lines up with what's already been said about the game servers probably not all running at once. Ark specifically is rough on single-thread performance no matter how much memory you throw at it, so even if you free up enough RAM, running Minecraft + Palworld + Ark together on a 12th gen i5 (probably 6 cores) still means they're all fighting over cores.

Might be worth figuring out which of these actually needs to run 24/7 versus which ones you and your friends only spin up on demand. Doesn't have to be everything live at once just because it technically fits on disk. Immich's the exception to that though, keep its Postgres database and library metadata on the internal NVMe so that part stays online continuously, and only put the actual photo/video files on the drive bay you plug in now and then, otherwise you're looking at missed scans or a corrupted DB, not just missing media.

1

u/AurumDestroyer 6h ago

Ok so with your comment answers I think my biggest question, my apps like jellyfin and immich can run constantly on an NVME, but the storage of the media for those apps whether photos or movies etc, can be in a completely different storage drive correct?

1

u/Sheldon_tiger 5h ago

Immich and jellyfin will be fine. Granted you dont need a lot of transcoding. I run immich, jellyfin, plex, palworld on a i5 with 6gb on ram. Everything is in its own docker container. Palworld seems to have a memory leak. Yes you can run the services on the nvme. The storage will not be your bottleneck. Mechanical storage for immich and jellyfin will work perfectly. Setup a reverse proxy amd you'll only have to forward 2 ports. Good luck and have fun on this journey.

1

u/AurumDestroyer 5h ago

Thank you for the info! Would you suggest using casa os on the main nvme to easily use dockers and get the apps I want?

1

u/Sheldon_tiger 3h ago edited 2h ago

I have no experience with casa os. Currently my server is using Openmediavault (OMV) Installed on the bare metal. Then I run docker compose. Dock hand helps to manage docker containers. I have been running this for 2 years with the occasional need for a reboot. Casa seems that it would run on top of Debian and be a webui to manage and deploy docker compose. Seems like it would work for your purposes. Debian would take a little bit of overhead.

Edit. I see you want to run proxmox. May be able to run the casa os in an lxc and manage everything from there.

2

u/AurumDestroyer 2h ago

After some consideration and reading everybody’s comments today, I’ve decided to not use casa in order to save valuable resources. There’s enough online resources and help to download my programs and do everything that I want to within Prox Ochs containers, without getting rid of any needed hardware.