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-XXXXcode 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 removeremoves the program,apt purgeadditionally 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:
rooton Linux, in practice viasudo, 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
Ubuntu / Debian
Ubuntu 24.04+, Debian 13+. Installation via .deb package.
sudo apt install ./uversion-server_*.deb
Windows
Windows 10, 11, Server 2019+. A single PowerShell line as Administrator.
iwr https://uversion.io/downloads/server/install.ps1 -UseBasicParsing | iex
Docker
Server and database in containers. The only supported path on the Red Hat family (RHEL, Rocky, AlmaLinux, Fedora).
docker compose up -d
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.
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.