Dedicated Valheim server for Viking survival with friends — host your own persistent world with full control over settings, mods, and backups.
Grab the automated bash script from GitHub to follow along with the video.
wget https://raw.githubusercontent.com/mhmdali94/Docker/main/gaming/valheim/valheim-ubuntu.sh
chmod +x valheim-ubuntu.sh
sudo bash valheim-ubuntu.sh
The script installs Docker if needed, then pulls the Valheim dedicated server image and starts the container. The server downloads the latest Valheim server files via SteamCMD on first start. Initial download is around 1–2 GB and may take a few minutes.
wget https://raw.githubusercontent.com/mhmdali94/Docker/main/gaming/valheim/valheim-ubuntu.sh
chmod +x valheim-ubuntu.sh
sudo bash valheim-ubuntu.sh
Set the server name, password, and world name via environment variables in your Docker Compose file or run command. SERVER_NAME is the name that appears in the Valheim server browser. SERVER_PASS is the join password (minimum 5 characters). WORLD_NAME is the name of the world file saved on disk — use this to load an existing world.
# Environment variables (set in Docker Compose or -e flags):
SERVER_NAME="My Viking Realm"
SERVER_PASS="yourpassword"
WORLD_NAME="MyWorld"
SERVER_PUBLIC=1
Launch Valheim, click "Start Game", then "Join Game". Switch to "Join by IP" tab at the bottom of the server list. Enter your server IP and port 2456. Enter the server password when prompted. Alternatively, your server appears in the Community Servers tab if SERVER_PUBLIC is set to 1.
# Connect address format:
<your-server-ip>:2456
World files are stored in the worlds/ directory inside the data volume. Back up the .db and .fwl files regularly. To add mods, install BepInEx in the server directory and place mod DLLs in BepInEx/plugins. Monitor the server with 'docker logs valheim-server -f'. The server auto-saves the world periodically and on clean shutdown.
# View server logs
docker logs valheim-server -f
# Backup world files
tar -czf valheim_backup_$(date +%F).tar.gz /path/to/valheim/data/worlds
| Port | Purpose |
|---|---|
| 2456 (UDP) | Game traffic |
| 2457 (UDP) | Steam query |
| 2458 (UDP) | Server status |
Valheim is a survival and exploration game set in Norse mythology. A dedicated server allows persistent 24/7 multiplayer without the host staying online — your Viking settlement grows even when individual players are offline. The server manages the shared world state for all connected players.
A dedicated Valheim server prevents the world from stopping when the hosting player logs off, allows up to 10 simultaneous players, and gives you control over the world seed, server name, and password. No subscription fee is needed unlike some hosted game server services.
Valheim uses UDP ports 2456, 2457, and 2458. Open all three UDP ports in your firewall and configure port forwarding on your router. The Steam query port 2457 allows the server to be found in the Steam server browser.
Alternatives include using the in-game friend join system (host stays online), renting from game server hosts like Nitrado, or using Steam Remote Play (single host, limited players). Self-hosting gives maximum uptime and control at no recurring cost.
Avoid self-hosting if your internet upload speed is under 10 Mbps — player ping will suffer. Also avoid if you cannot open UDP ports on your network (CGNAT prevents port forwarding on many ISPs). Use a VPS if home port forwarding is not possible.
PrismaTechWork provides end-to-end infrastructure services — from initial deployment and security hardening to ongoing monitoring, automated backups, and dedicated support. Whether you need a single-server setup or a multi-site network, our team ensures your infrastructure is built right, secured properly, and maintained reliably.
Valheim officially supports up to 10 simultaneous players per server. The game world is procedurally generated and shared among all players. In practice, performance with 10 players requires a server with at least 4 CPU cores and 8 GB RAM.
Yes. In Valheim, characters are stored locally on your PC and are independent of the server. Your inventory, skills, and equipment are on your character. You can bring the same character to different servers and keep your progression. The server only stores the shared world (terrain, structures, and items placed in the world).
Install BepInEx on the server — it is the mod loader for Valheim. Download mod DLL files from Nexus Mods or Thunderstore and place them in the BepInEx/plugins directory. Players connecting also need the same mods installed on their client. Nexus Mods Vortex or Thunderstore Mod Manager automate client-side mod management.
The world seed is a string that determines how the procedurally generated world is shaped — which biomes appear where, the layout of mountains, oceans, and dungeons. The server password is simply the access password players enter to join. They are separate settings — the seed defines the world, the password controls access.
Yes. Copy your world files (worldname.fwl and worldname.db) from your local Valheim worlds folder to the server's worlds directory. Set the server's world name to match your world file name. The server will load and continue your existing world.
Open Steam and go to View then Servers then Add a Server. Enter your server IP and port 2456. If UDP ports are open and the server is running, it will appear. Players can also add it directly in the Valheim Join Game screen using the server IP.
The Docker image uses SteamCMD to download the Valheim dedicated server files. Update by pulling the latest Docker image and restarting the container, or configure the container to check for updates on each restart. Clients and server must always run the same game version.
For 2 to 5 players: 2 CPU cores, 4 GB RAM, 10 GB disk. For 5 to 10 players: 4 CPU cores, 8 GB RAM, 15 GB disk. Valheim dedicated server performance scales well with CPU clock speed. A VPS with a modern Ryzen or Intel server CPU provides excellent performance even for 10 players.