I containerised a Romestead server because my friend never opened his

작성자

카테고리:

← 피드로
DEV Community · Matheus Toledo · 2026-07-10 개발(SW)
Cover image for I containerised a Romestead server because my friend never opened his

Matheus Toledo

I wanted to play Romestead. My friend had the server on his machine. My friend was never online.

So I stopped waiting and moved it somewhere that is always on.

The setup is nothing clever — it’s the same shape I already use for my seasonal Minecraft servers: a .docker/ folder holding the Dockerfile and compose.yml, and a sibling server/ directory bind-mounted into the container. The image carries only the .NET 8 runtime; the game files live outside it, so updating the server never means rebuilding the image, and rebuilding the image never touches the saved worlds.

Two things cost me more time than the rest combined:

dotnet-install.sh doesn’t give you everything. It unpacks the portable runtime and stops there. On a slim Debian base you still need ICU and OpenSSL, or the server throws on startup.

Docker doesn’t set $HOME when you switch users. Even after useradd -m, $HOME stays /. Romestead bundles the GameAnalytics SDK, which builds its data directory from $HOME — so it tried to create /GameAnalytics at the filesystem root, the unprivileged user couldn’t write there, and the server died in a restart loop. One ENV HOME=/home/steam and it was over.

It’s on GitHub: toledkrw/romestead_dedicated_server

Pair it with a playit.gg tunnel and you’re up. One warning: the client won’t connect through the tunnel’s hostname — hand your players the proxy’s IPv4 address instead.

My friend still hasn’t logged in.

원문에서 계속 ↗

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다