Skip to content

Updates

A server keeps itself up to date. It checks for a new version when it starts, and only the files that actually changed are downloaded.

If the server is terminated by the updater, players that are still connected will be informed with a disconnect message.

Channels

A server follows a release channel, which decides which line of updates it downloads. The channel is set with CHANNEL in a container, or with channel in settings/server.settings.json without one:

compose.yaml (excerpt)
environment:
  CHANNEL: "alpha"

Note

Currently there is only the alpha channel!

Automatic updates

By default the server updates itself on every restart. Depending on the type of update the server might boots straight into the new vesion or it might require a restart of the main server process.

Depending in which enviroment you're running the server in, i.e. in a container, a restart needs to be handled by the container runtime:

compose.yaml (excerpt)
restart: unless-stopped

Without containers, the server restarts itself when it was started from a terminal. Otherwise it exits and expects a service manager or script to bring it back. See Managing a server.

Manual updates

If you prefer more control over your update cycle, disable automatic updates and apply them yourself:

compose.yaml (excerpt)
environment:
  AUTO_UPDATE: "false"

The server reports that an update is available and keeps running until you apply it. There are two ways to do that:

From the console(Recommended): Attach to the server and type update. The server checks for a new version first and only stops when there is one to apply. If there is no new version or the update service cannot be reached, it reports that and keeps running. See Managing a server for how to attach the console.

From a one shot docker command: Start the server once with the --update flag. It applies anything pending and then starts normally:

docker compose run --rm server --update

Next steps