October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsPC HealthRecommendedCrashes, freezes, slowdowns? Check your PC nowSpot repairable issues before they interrupt work.Check PCOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
VGSources
Blog

How to Run a Starbound Server in Docker (Ports, Saves, Mods and Steam Guard)

A practical Docker guide for Starbound: choose an image, persist /steamcmd/starbound, publish TCP 21025, handle Steam Guard interactively, add mods, back up worlds and troubleshoot networking.
WorldDocker Length11 min Posted Quest giverVGSources Team
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The most practical way to run a Starbound dedicated server in Docker is to use a maintained community image, publish TCP port 21025, and mount the container’s Starbound directory to storage that survives container replacement. The example below uses the Didstopia image, whose documented contract installs or updates the game at startup when Steam credentials are supplied.

Your server’s configuration, universe saves and mods live in that mounted directory. A Steam account that owns Starbound is required for installation or updates, and Steam Guard may require an interactive terminal during startup. Docker does not make a container port reachable by itself: the host firewall and, for Internet play, your router must also allow and forward TCP 21025.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What you need before starting

Prepare these items before creating the container:

  • A machine running Docker Engine with enough CPU, memory and disk for the players, worlds and mods you actually expect. No authoritative minimum hardware figures are published for these images, so leave operational headroom and size the host from observed workload.
  • A Steam account that owns Starbound. Steam credentials are used by Steam-based images when they install or update the dedicated server.
  • A host directory or named Docker volume for persistent Starbound data. The examples use /srv/starbound on the host.
  • Administrative access to the host firewall and, if players connect from the Internet, to the router in front of it.
  • A reviewed image tag. Community images differ in update behavior and maintenance; avoid relying on an unreviewed floating tag for a long-running server.

The container can be recreated without losing a world only when the Starbound data directory is stored outside the disposable container layer.

Choose an image with a clear startup contract

There is no official Docker image described in the supplied material, so image behavior matters as much as the Docker command. Read the current README for the image you select, confirm its mount path and environment variables, and record the tag you tested.

#1 Best Overall
Sale
YRPRSODF TV Game Console Built in 100+ Games, Handheld Video Game Machine with 2.4G Wireless Gamepad Somatosensory Control, HD Plug and Play, Home Interactive& Puzzle Games, Red
  • [Somatosensory Game Console] Unlike normal TV game console, YRPRSODF portable game machine is somatosensory control, just move your body with the wireless game handle, you can play games (Double or Single) and interact with the person in the video or TV immersively, bringing you an amazing somatosensory gaming experience.
  • [2.4G Wireless Game Console] It equipped with 2pcs portable 2.4G wireless game handle, no wires, no dead-angle transmission signal, response quickly and accurately. The sensing distance is up to 10 meters far, you can play it at home freely.(If you have any problem with the game handle, please contact us for free replacement).
  • [Built-in 100+ Games] YRPRSODF independently developed copyright game console is built in 100+ games in total, including 31 interactive HD video games and 32 puzzle games such as running, basketball, football etc. Fit for both boys and girls, women and men. It's an ideal birthday / Christmas / festival present for kids and adults.
  • [ HD output & USB power supply] This mini game console comes with a HD and USB cable, just connect it with TV, you can start to play games. It fits for all size TV and supports HD video output. (Noted: only fit for TV, not fit for computer or tablets).
Image Update workflow Documented persistence path Compose support UID/GID or non-root behavior Mods Freshness and pinning
didstopia/starbound-server Installs or updates at startup when Steam credentials are present. Mount host storage at /steamcmd/starbound; saves are under /steamcmd/starbound/storage/universe. A docker run pattern is documented; Compose details are not stated. Not stated. Use /steamcmd/starbound/mods. Community maintenance varies; use a reviewed, pinned tag when available.
morgyn image Documents an interactive update.sh workflow rather than automatic startup updates. Not stated in the supplied documentation. Not stated. Not stated. Not stated. Review its current README and pin a tested tag if offered.
hetsh image Uses a fixed game version in each image build. Bind mount documented at /starbound. Not stated. Not stated. Not stated. Version follows the image build; verify the build date and available tags.
azureowl image Update behavior is not stated in the supplied documentation. Uses a host volume; exact internal path depends on its Compose example. Documents a Compose pattern. Supports explicit UID/GID ownership settings. Documents optional mod IDs. Verify maintenance status and pin a reviewed tag before production use.

The Didstopia example is used for the step-by-step procedure because its storage layout, port and credential variables are explicitly documented. If you choose another image, do not assume these paths or variables are interchangeable.

Create persistent storage

Bind mount on a Linux host

Create a directory owned by the account or service policy that will manage the container:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
sudo mkdir -p /srv/starbound
sudo chmod 750 /srv/starbound

The image will populate this directory with the server files. Before deleting a container, copy or snapshot this directory; it contains the configuration, universe and mods that define your server.

Named volume alternative

A named volume avoids choosing a host path:

docker volume create starbound-data

Use -v starbound-data:/steamcmd/starbound in place of the bind mount. A bind mount is easier to inspect, back up with ordinary host tools and place on a specific disk; a named volume is convenient when Docker should manage the storage location.

Start the container

This is the documented Didstopia-style command. Replace the placeholder values, and do not paste real credentials into a shared terminal, ticket or public issue:

docker run -d 
  --name starbound 
  --restart unless-stopped 
  -p 21025:21025/tcp 
  -v /srv/starbound:/steamcmd/starbound 
  -e STEAM_USERNAME='your-steam-name' 
  -e STEAM_PASSWORD='your-steam-password' 
  didstopia/starbound-server

--restart unless-stopped asks Docker to bring the service back after a host reboot, while -p 21025:21025/tcp maps the host’s TCP port 21025 to the container’s TCP port 21025. The bind mount makes the entire Starbound tree persistent.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
At Games Legends Flashback Boom!
  • 50 Classic Games including: 1942, Super Street Fighter II, Tetris, Mega Man I & II, Galaga, Dig Dug, Burger Time
  • HDMI Video Output (720p)
  • Comes with two Wired Game Controllers
  • SD Card Slot for Downloadable Games
  • Save/Load/Rewind all Games

Keep credentials out of shell history

The command above shows the image’s required variable names, but putting a password directly in a command can leave it in shell history and process listings. A safer Docker pattern is an environment file readable only by the account that starts the container:

cat > /srv/starbound/steam.env <<'EOF'
STEAM_USERNAME=your-steam-name
STEAM_PASSWORD=your-steam-password
EOF
chmod 600 /srv/starbound/steam.env

docker run -d 
  --name starbound 
  --restart unless-stopped 
  -p 21025:21025/tcp 
  -v /srv/starbound:/steamcmd/starbound 
  --env-file /srv/starbound/steam.env 
  didstopia/starbound-server

Do not commit that file to source control, place it in a public backup, or include its contents in an issue report. Credentials are needed for installation or updates; after a successful install, follow the image README’s guidance on whether they can be removed for ordinary runtime.

Handle Steam Guard during installation or updates

Steam Guard can require a one-time code while the image is installing or updating. A detached container started with -d has no interactive terminal for that prompt. Start the container with an attached standard input and TTY when a code is expected:

docker run -it 
  --name starbound 
  --restart unless-stopped 
  -p 21025:21025/tcp 
  -v /srv/starbound:/steamcmd/starbound 
  --env-file /srv/starbound/steam.env 
  didstopia/starbound-server

Enter the Steam Guard code only at the prompt shown by the container. Keep that terminal attached until installation or updating finishes, then stop and recreate the container in detached mode if the image documentation requires a separate runtime invocation. If a container with the same name already exists, remove it only after confirming the persistent directory is intact:

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
docker stop starbound
docker rm starbound

Never delete /srv/starbound as part of this cleanup. The account must own Starbound; Steam Guard does not replace that ownership requirement.

Verify installation and inspect logs

Immediately after starting, check the container state and follow its logs:

docker ps --filter name=starbound
docker logs -f starbound

During a first launch you should see the image’s install or update activity followed by server startup messages. A container that exits usually indicates a credential, permission, image-version or configuration problem. Get the exit status and recent log lines before changing anything:

docker inspect -f '{{.State.Status}} {{.State.ExitCode}}' starbound
docker logs --tail 200 starbound

The server files should appear on the host under /srv/starbound. For the Didstopia layout, the key locations are:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • /srv/starbound/storage/starbound_server.config — the main server configuration file.
  • /srv/starbound/storage/universe — world and universe save data.
  • /srv/starbound/mods — server-side mods.

Configure the server

Edit starbound_server.config

Stop the container before making a configuration change so that the server does not overwrite a file while you edit it:

docker stop starbound
$EDITOR /srv/starbound/storage/starbound_server.config
docker start starbound

Use the keys and syntax already present in that file. Preserve valid JSON-style punctuation and make a backup before substantial edits:

cp /srv/starbound/storage/starbound_server.config 
   /srv/starbound/storage/starbound_server.config.bak

If the server fails after an edit, restore the backup, start the container and inspect the logs. Do not replace the whole file with settings copied from a different image; paths and supported options can vary by Starbound build.

Add and update mods

Place server mods in /srv/starbound/mods for the Didstopia layout. Stop the server before copying files, keep a record of each mod version, then start it and watch the logs for load errors. Every connected player generally needs a compatible client-side mod set; a server-side file alone cannot make incompatible clients work.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

When using an image that documents a different mechanism, follow that image’s instructions. The azureowl image, for example, documents optional mod IDs in its Compose pattern, while the other documented images do not state an equivalent variable.

Protect world data

World files are under storage/universe. Stop the container before a filesystem-level backup so that writes are complete:

docker stop starbound
tar -czf /srv/starbound-backup-$(date +%F).tar.gz -C /srv starbound
docker start starbound

Store backups on a different disk or host. Test a restore periodically by extracting a copy to a separate directory and starting a temporary container against that copy; a backup that has never been restored is only an assumption.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Make port 21025 reachable

Understand Docker publishing

The -p 21025:21025/tcp option publishes the container port on the Docker host. Without it, a service listening inside the container is not reachable from outside the host through the normal network path.

Open the host firewall

Allow inbound TCP 21025 in the host firewall, restricted to known player networks when practical. The exact command depends on the firewall in use; verify the resulting rule with that firewall’s status tool rather than assuming Docker modified it correctly.

Forward the router port for Internet play

If the Docker host is behind a home or office router, forward TCP 21025 from the router’s public interface to the host’s private IP address on TCP 21025. Reserve the host’s private address so the rule does not break after a DHCP lease change. Players outside your network must use the router’s public address or DNS name, while players on the same LAN can usually use the host’s private address.

Test from outside the LAN

Testing from the same network can succeed even when the router’s public forwarding is wrong. Ask a player on another network to connect, or use an external port-checking service that supports TCP. If the external test fails, check the chain in order: container running, Docker publish present, host firewall rule, router forward, and ISP or upstream firewall policy.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Operate the server safely

Routine lifecycle commands

docker start starbound
docker stop starbound
docker restart starbound
docker logs --tail 200 starbound

Use docker stop before copying saves or editing configuration. A restart preserves the mounted files; removing and recreating the container is safe only when the same persistent mount is attached again.

Updating with the Didstopia workflow

Didstopia documents installation or updates at startup when Steam credentials are supplied. Plan an update window, back up storage/universe, stop the current container, then recreate it with the same mount and port options and the reviewed image tag. Watch the logs until the update and server startup complete. If Steam Guard asks for a code, repeat the interactive TTY procedure rather than leaving a detached process waiting for input.

Updating other images

The documented workflows are not interchangeable:

  • The morgyn image documents an interactive update.sh process; follow that script’s current instructions instead of assuming startup updates.
  • The hetsh image ties a fixed game version to each image build, so changing the image tag is also a version change.
  • The azureowl image emphasizes Compose, explicit UID/GID ownership and optional mod IDs; update through the Compose configuration it documents.

Record the old image tag and keep the previous image available until the new build has loaded the world and mods successfully.

Compose deployment with explicit ownership

Compose is useful when you want the container definition, port mapping and volume declaration in one reviewable file. The azureowl image specifically documents a Compose pattern with UID/GID ownership, a host volume and optional mod IDs. Use its current variable names and internal paths exactly; do not copy the Didstopia path into that file unless the image README confirms it.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For any Compose deployment, keep secrets outside a committed YAML file, bind the host directory to persistent storage, publish TCP 21025, and make the host directory writable by the UID/GID configured for the container. A permission mismatch commonly appears as an empty data directory, failed writes or a container that exits during startup.

Troubleshooting by symptom

Players cannot connect

  • Confirm the container is running with docker ps.
  • Confirm the publish rule includes 21025:21025/tcp.
  • Check the host firewall for inbound TCP 21025.
  • For Internet players, verify the router forwards TCP 21025 to the correct host address.
  • Test from a network outside the LAN to avoid a misleading local-only success.

The container exits during startup

  • Read the last 200 log lines and inspect the exit code.
  • Check that the Steam account owns Starbound and that the credential variables are spelled correctly.
  • If Steam Guard is enabled, recreate the container with an interactive TTY and enter the code.
  • Check write permissions on the mounted directory.
  • Restore the last known-good configuration backup if the failure followed an edit.

The world or mods disappeared

  • Inspect the host mount and confirm it is attached to /steamcmd/starbound for the Didstopia image.
  • Look in storage/universe for saves and mods for mod files.
  • Check that a new container was not started with a different, empty host directory or named volume.
  • For another image, verify its documented internal path; hetsh uses /starbound, not the Didstopia path.

Updates do not run

Verify which workflow the image supports. Didstopia updates on startup when credentials are present; morgyn documents an interactive update.sh; hetsh packages a fixed version per image build; azureowl’s update behavior is not stated in the supplied documentation. Do not infer automatic updates from the existence of a newer image tag.

Security and maintenance checklist

  • Use a Steam account dedicated to server administration when possible, and never publish its password or Steam Guard code.
  • Keep credential files mode 600, outside source control and out of public support posts.
  • Pin a reviewed image tag and note the date you approved it.
  • Back up storage/universe and configuration before updates or mod changes.
  • Limit TCP 21025 at the host firewall when your player community has known address ranges.
  • Monitor logs after restarts and updates; a running container is not proof that the game server loaded the intended world.
  • Review image maintenance and README changes before pulling a replacement image.

How much hardware does a Starbound Docker server need?

The documented material publishes no authoritative RAM, CPU, bandwidth, disk, or player-capacity numbers. Avoid treating an arbitrary minimum as a guarantee. Start with the host you have, observe CPU and memory while the expected number of players explore and generate worlds, measure disk growth from saves and logs, and keep headroom for updates and backups. Increase resources when monitoring shows sustained pressure rather than selecting a number unsupported by the image documentation.

When a VPS is the better fit

A home server works when you can maintain Docker, router forwarding, backups and uptime. Renting a VPS or managed game-server host can be more practical when you need a public IP, independent power and network service, or do not want to administer hardware. Before paying, verify that the provider allows Docker, exposes inbound TCP 21025, gives you firewall control, supplies adequate bandwidth under its policy, and permits persistent disk snapshots. The Docker procedure remains the same: persistent Starbound storage, port 21025, secure Steam credentials and an image workflow you understand.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Quick Recap

Bestseller No. 2
At Games Legends Flashback Boom!
At Games Legends Flashback Boom!
HDMI Video Output (720p); Comes with two Wired Game Controllers; SD Card Slot for Downloadable Games
$39.99
Bestseller No. 3
Bestseller No. 4
Bestseller No. 5

Final deployment checklist

  1. Choose an image whose README states its mount, update and credential contract.
  2. Create persistent host storage or a named volume.
  3. Supply credentials securely for installation or updates.
  4. Publish TCP 21025 with Docker.
  5. Start interactively if Steam Guard requests a code.
  6. Confirm the configuration, universe and mods are present in the mounted tree.
  7. Open the host firewall and forward the router port when Internet players are involved.
  8. Back up the universe before updates, then pin and record the image version you deploy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More quests from Patch Notes

  1. How to Set Up a RedM (RDR2) Server in 2026: License Key, txAdmin and server.cfg, Step by StepBlog11min
  2. Best RedM (RDR2) Server Hosting in 2026: Comparing Four Hosts on Slots, Memory and PriceBlog10min
  3. How to Host a Mindustry Server in 2026: server-release.jar, Port 6567 and the Commands That MatterBlog7min
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Crashes, No Sound, or Screen Glitches?Free driver scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.