Skip to content

Server Installation

Windows server installation

These steps install the LyftData server as a Windows service. All commands below must be run from an elevated PowerShell prompt.

Before you begin

Complete the installation prerequisites and install the Windows distribution (MSI recommended). Confirm lyftdata --version from an elevated PowerShell prompt.

MSI automation (optional)

The MSI supports a small set of public properties for unattended installs:

Terminal window
# Default (recommended): LocalService
msiexec /i .\lyftdata-x86_64-pc-windows-msvc.msi /qn
# Optional: LocalSystem (highly privileged; prefer a dedicated account in production)
msiexec /i .\lyftdata-x86_64-pc-windows-msvc.msi /qn LYFTDATA_MSI_SERVICE_ACCOUNT=LocalSystem
# Optional: enable auto-start and attempt to start the service during MSI install (best-effort).
# Warning: this can leave the service configured to start automatically even if `service.env` is not ready yet.
msiexec /i .\lyftdata-x86_64-pc-windows-msvc.msi /qn LYFTDATA_MSI_SERVICE_START=1

Prepare the server account

Need a trial-only setup? Start with the Evaluation Quickstart before wiring services.

Configure the service environment file

Native services load environment variables from a scoped file (instead of machine-wide registry environment variables) so secrets like API keys and initial admin passwords are not exposed to non-admin users.

Create C:\ProgramData\LyftData\server\service.env with the required settings:

Terminal window
New-Item -ItemType Directory -Path "C:\ProgramData\LyftData\server" -Force | Out-Null
@'
# LyftData server service environment
LYFTDATA_STAGING_DIR=C:\ProgramData\LyftData\server
LYFTDATA_LICENSE_EULA_ACCEPT=yes
LYFTDATA_ADMIN_INIT_PASSWORD=ChangeMeVerySoon
'@ | Set-Content -Path "C:\ProgramData\LyftData\server\service.env" -Encoding UTF8

LYFTDATA_ADMIN_INIT_PASSWORD is recommended for unattended Windows services. If you omit it, LyftData does not print a generated password to the logs. Instead it writes a one-time setup link to C:\ProgramData\LyftData\server\bootstrap\initial-admin.url, which you must use locally on the server host.

Install the native service

Install the service using the built-in Windows Service Control Manager (SCM) integration:

Terminal window
# Install/update (default: LocalService). Use --replace for MSI installs and upgrades.
lyftdata service install --replace
# Optional: run as a dedicated local user account (recommended for production)
# lyftdata service install --replace --user ".\lyftdata" --password-stdin
Start-Service LyftDataServer

Verify the installation

Terminal window
# Check the Windows service
Get-Service LyftDataServer
# Inspect the server log (optional)
Get-ChildItem "C:\ProgramData\LyftData\server\logs\lyftdata*.log" | Sort-Object LastWriteTime | Select-Object -Last 1 | Get-Content -Tail 50

If LYFTDATA_ADMIN_INIT_PASSWORD was not supplied:

  • inspect C:\ProgramData\LyftData\server\bootstrap\initial-admin.url to retrieve the one-time setup link, or
  • print a fresh link locally with lyftdata server bootstrap --staging-dir "C:\ProgramData\LyftData\server" --bind-address 127.0.0.1:3000 --print-url, or
  • create the first admin directly with lyftdata server create-admin --staging-dir "C:\ProgramData\LyftData\server".

Keep the service on localhost until that setup is complete. If you later bind to a non-loopback address before an admin exists, the server refuses remote bootstrap by default.

Next steps

Legacy: Install with NSSM

If you are running an older LyftData build that does not include lyftdata service ..., you can still install the server service with NSSM.

Configure machine environment variables (legacy)

Terminal window
[Environment]::SetEnvironmentVariable("LYFTDATA_STAGING_DIR", "C:\\ProgramData\\LyftData\\server", "Machine")
[Environment]::SetEnvironmentVariable("LYFTDATA_LICENSE_EULA_ACCEPT", "yes", "Machine")
[Environment]::SetEnvironmentVariable("LYFTDATA_ADMIN_INIT_PASSWORD", "ChangeMeVerySoon", "Machine")

Install the service with NSSM (legacy)

Terminal window
# Install the service
nssm install LyftDataServer "C:\Program Files\LyftData\lyftdata.exe" run server
nssm set LyftDataServer AppDirectory "C:\Program Files\LyftData"
nssm set LyftDataServer AppStdout "C:\ProgramData\LyftData\server\server.log"
nssm set LyftDataServer AppStderr "C:\ProgramData\LyftData\server\server-error.log"
nssm set LyftDataServer ObjectName ".\lyftdata" "<ServiceAccountPassword>"
nssm set LyftDataServer Start SERVICE_AUTO_START
# Start the service
Start-Service LyftDataServer

Replace <ServiceAccountPassword> with the password for the lyftdata service account before running the command.