uVersion
English
Download →

Wiki

Install uVersion Server

Choose your path: Ubuntu / Debian (.deb package), Windows (PowerShell) or Docker.

The uVersion server installs with a single command on Ubuntu/Debian, on Windows, or via Docker. The installer asks a few questions, sets up PostgreSQL, the database, the system service and the HTTPS certificate, then shows you your administrator password. Allow ten minutes.

Vocabulary

Six words recur throughout these pages. If any is unfamiliar to you, this section is enough: nothing else is assumed known.

  • Data folder: the folder where the server writes everything that belongs to you, namely the content of your versioned files, its certificate and its identity. You choose it at installation time. This is the folder to back up.
  • PostgreSQL cluster: a database instance, with its own folder and its own port. A single machine can host several without them seeing each other. uVersion uses the system's, or its own, depending on what you answer.
  • System service: a program that runs in the background and restarts by itself when the machine boots. It is called a "Windows service" on Windows, a "systemd unit" on Linux.
  • TLS fingerprint: a string of 64 characters that identifies the server's certificate. You confirm it once on each workstation, like the first SSH connection to a machine.
  • Activation code: the UV-XXXX-XXXX-XXXX code received by email. The installer exchanges it for your full licence. It is used only once.
  • Purge: the complete uninstall of a package, configuration answers included. On Debian, apt remove removes the program, apt purge additionally removes its settings.

Prerequisites

  • A machine (VPS, mini-PC, office server) running Ubuntu 24.04+, Debian 13+, or Windows 10, 11, Server 2019+. The Docker container covers the other distributions.
  • Administration rights on that machine: root on Linux, in practice via sudo, or a PowerShell "Run as administrator" on Windows. The installer refuses to start without them.
  • Your uVersion activation code (format UV-XXXX-XXXX-XXXX) received by email when your licence is issued, or retrievable from your account area. This code is single-use: once exchanged, it can no longer be used on another machine.
  • Outbound Internet access to licence.uversion.io (HTTPS), for the duration of the code exchange. On a network without Internet access, see the "Non-interactive and offline installation" section of the Ubuntu page: the installer also accepts the full licence key, which you retrieve from your account area on another workstation.
  • PostgreSQL. On Ubuntu and Debian, it arrives automatically as a dependency of the package, you have nothing to do. On Windows, the installer sets it up via winget, absent from Windows Server 2019 and 2022: on these two versions, install PostgreSQL 16 by hand before running the script.
  • Disk space. The server itself and the database are light: it is the chunk store (the content of your files, all revisions combined) that dominates, so size it against the size of your Unreal projects and their history. If you also place the database on the data folder, the installer additionally writes a 1 GB ballast file there, to be deleted if the disk fills up.
  • TCP port 8443 open inbound, this is where your workstations connect. The Windows installer creates the firewall rule itself. The Debian package opens no port: do it yourself, for example sudo ufw allow 8443/tcp.

Choose your path

HTTPS and certificate

The server speaks HTTPS only, on port 8443. There is nothing to configure and no domain name is necessary: on first startup, the server generates its own certificate, called self-signed, and displays its SHA-256 fingerprint at the end of the installation. Each workstation confirms this fingerprint once, at the first connection, and thereafter refuses any different fingerprint.

Visible consequence: a browser that opens https://<server-ip>:8443 shows a security warning, because this certificate is signed by no public authority. This is expected. Check that the fingerprint shown is indeed the one noted at installation, then proceed anyway.

The security warning shown by the browser on the first connection to the server, with the button that lets you continue.

Details of the procedure on the workstation side: TLS fingerprint. If your server has a domain name and you already have a certificate, you can drop yours in instead: see section 2 of the operations runbook (docs/operations.md) shipped with the server.

What next?

The installation shows you, in a box, the admin username, a temporary password and the server address. Note them down. You then connect from any workstation on the network, with a browser or the desktop client, at the address https://<server-ip>:8443, where <server-ip> is the address of the machine you just installed.

  • First login : sign in with the initial password, change it
  • TLS fingerprint : self-signed certificate, to be confirmed once on the client side
  • Troubleshooting : "service won't start", "activation code rejected", etc.