App Store template
Valheim Docker icon

Valheim Docker

A persistent Valheim dedicated server with the built-in Huginn status dashboard and Steam multiplayer support.

Launch in your Sealos workspace.

Valheim Docker template preview
Template previewFull screenshot
Template deployments
14 on Sealos
Deployment
Your own instance
Category
Tools

About this template

Overview

Valheim Docker runs a Valheim dedicated server with Odin process management and the built-in Huginn status dashboard. This template deploys one vanilla server with persistent game files and world saves.

From the documentation

In-game screenshot from the official Valheim press kit.

How to deploy Valheim Docker

  1. Choose Deploy now to start Valheim Docker in your Sealos workspace.
  2. Review server_name, world_name, server_password in the deployment form.
  3. Launch the template, then inspect the application status and resource cards in Canvas.

Resources to plan for

Start with the resources defined by the Valheim Docker template. Review CPU, memory, persistent storage, and network allocations for every service in Canvas. Capacity needs depend on your data and workload; monitor usage as they grow.

Template configuration and setup

Access after deployment

Use the application URL or connection details shown in Canvas. Follow the deployment guide for first-time account setup or client configuration, and keep generated credentials available for that step.

Hosting and billing

Sealos monthly plans include compute, memory, storage, and traffic. Size your plan for all deployed services. Software licenses and external AI or API services may have separate terms and charges. Confirm the applicable plan and optional charges in Cost Center.

Compare Sealos resource plans
Read full documentationCollapse documentation

For current cloud charges, refer to Sealos plan pricing. Upstream documentation may reference earlier billing models.

Deploy and Host Valheim Docker on Sealos

Valheim Docker runs a Valheim dedicated server with Odin process management and the built-in Huginn status dashboard. This template deploys one vanilla server with persistent game files and world saves.

Valheim in-game camp screenshot

In-game screenshot from the official Valheim press kit.

About Hosting Valheim Docker

Odin installs the dedicated server through SteamCMD, starts Valheim, and shuts it down gracefully. Huginn provides a public, read-only dashboard, player information, health checks, and interactive API documentation.

Game binaries and configuration use a 2 GiB persistent volume. World saves use a separate 1 GiB volume at /home/steam/.config/unity3d/IronGate/Valheim. Sealos exposes the dashboard through HTTPS and the game through UDP NodePorts.

Common Use Cases

  • Hosting a persistent cooperative world for friends.
  • Moving an existing vanilla world to a server that stays online.
  • Checking server health and player counts from a browser.

Dependencies for Valheim Docker Hosting

The template includes the server image, SteamCMD, Odin, Huginn, persistent volumes, separate HTTP and UDP Services, and an HTTPS Ingress. Players need a licensed Valheim client compatible with the installed server version.

Implementation Details
ComponentConfiguration
Servermbround18/valheim:3.7.0, one StatefulSet replica
CPU / memory limits500m / 2 GiB
Game installation2 GiB PVC at /home/steam/valheim
World saves1 GiB PVC at /home/steam/.config/unity3d/IronGate/Valheim
DashboardHuginn on port 3000, served by a ClusterIP Service through HTTPS Ingress
Game networkingUDP 2456 (game), 2457 (query), and 2458 on a separate -nodeport Service
RuntimeVanilla, public server listing, Steam backend, UTC

The container runs as UID 111 and GID 1000. Startup and readiness checks use Huginn's /readiness; liveness verifies both the Valheim process and Huginn. The container image version pins the Docker tooling; SteamCMD installs the current stable Valheim server on first start. Later restarts reuse the installed version. Set UPDATE_ON_STARTUP=1 temporarily when you want to update, then return it to 0.

Empty-server validation at 100m CPU / 2 GiB covered public server queries, dashboard/API access, and save persistence. The template defaults to a 500m CPU limit. Increase capacity before sustained multiplayer sessions. The 2 GiB installation volume fits the tested vanilla build. Expand it before large updates or adding mods. Use one replica per world, and increase CPU and memory for active players or larger worlds. Automatic update and backup schedules are disabled by default; keep separate copies of important saves.

Why Deploy Valheim Docker on Sealos?

Sealos provides a Kubernetes foundation, one-click deployment, persistent storage, and an HTTPS status page. Pay-as-you-go resource allocation lets you start with a small server and adjust its capacity from the Canvas resource cards or AI dialog.

Deployment Guide

  1. Open the Valheim Docker template and click Deploy Now.
  2. Set server_name, world_name, and server_password. Use at least 5 characters for the password and a value different from the server name. Use letters, numbers, and hyphens for passwords; world names also support underscores, and server names support spaces.
  3. Sealos typically provisions the resources in 2-3 minutes. The first server start downloads approximately 1.64 GiB and generates the world, which takes additional time. Startup checks allow up to 60 minutes for this first initialization. Open the Canvas and wait for the server to become Ready.
  4. Open the application's HTTPS URL to view Huginn. The dashboard opens directly and uses public read-only endpoints; game access uses the password supplied during deployment.
  5. Open the Service resource card whose name ends in -nodeport and copy the public UDP host and the NodePort mapped from 2456. In Valheim, select Start Game, choose your character, open Join Game, and use Add Server with <public-host>:<game-node-port>. Enter server_password when prompted.
  6. For Steam's server browser, use the separately mapped query port from 2457. Keep the game and query mappings distinct when copying addresses. Canvas shows the actual assigned ports for your deployment.
Dashboard and Game Access

Huginn includes /status, /players, /mods, /metrics, and /docs. It provides server visibility without an account registration flow. The game's password is configured in the StatefulSet's PASSWORD environment variable and can be viewed or changed from its resource card.

The bundled dashboard's Steam connection buttons assume a direct port mapping. Use the public UDP address shown in Canvas for this NodePort deployment.

Configuration and Backups

Use the Canvas AI dialog or resource cards for post-deployment changes. Keep the replica count at one. Increasing CPU and memory is the supported way to provide more capacity for a single world.

To import a world, stop the server, copy its matching .db and .fwl files into worlds_local under the save volume, set world_name to their base name, and restart. Preserve the entire save directory when making backups. Deleting persistent volumes deletes their stored worlds and game files.

Troubleshooting

The status page reports offline: Inspect the server logs for SteamCMD progress and the final Game server connected message. Huginn starts before world initialization finishes. Repeated OOM terminations require a higher memory tier.

A game client cannot connect: Check the public UDP host, the assigned game port, the password, and the client/server versions. The HTTPS dashboard address serves web traffic; game clients use the Service's UDP address.

An update reports insufficient disk space: Expand the game installation PVC, then restart the server. The world-save volume is separate.

License

Valheim Docker, Odin, and Huginn are distributed under the BSD 3-Clause License, copyright © 2021 mbround18. Valheim and its game assets are governed by their respective owners' terms.

From launch to everyday operations

Why deploy
on Sealos

A shorter path from an app you want to an app you can run. Sealos brings deployment and ongoing operations into one place.

  1. One-click deployment

    Start with a ready-made template. Review its configuration and launch from the Sealos console.

  2. Managed Kubernetes

    Run on managed infrastructure with built-in workload scheduling and recovery.

  3. Automatic HTTPS

    Give your application a public HTTPS endpoint with certificates managed for you.

  4. Persistent storage

    Keep application data on persistent volumes across container restarts.

  5. Room to grow

    Adjust CPU, memory, and replicas from the console as your workload changes.

One template. Connected resources.

You Get the Whole Stack

Sealos provisions the resources defined by your template and brings them together in your workspace.

  • App Service

    Container workloads with configurable CPU, memory, and replicas.

  • Public HTTPS URL

    An address for your app, with managed TLS certificates.

  • Database

    A database provisioned alongside your app when the template calls for one.

  • Persistent Volume

    Storage for the files and data your application needs to keep.

  • Environment Variables

    Application settings and secrets configured in one place.

  • Logs & Metrics

    Inspect container logs and resource usage from the console.

Resources and their configuration vary by template. Review the deployment form for this app’s exact setup.

Explore more production-ready templates.

More