⬇️Installation

Installation instructions for PowerShell Universal.

MSI Install (Windows)

The MSI install creates a PowerShell Universal service. By default, PowerShell Universal listens on port 5000. You can navigate to http://localhost:5000

MSI downloads are available on our download page.

System installs run as a Windows service. User installs run when the user logs in to the machine. The user install runs in the user's context.

MSI Parameters

The following table contains the parameters you can specify if running msiexec against our MSI install for automation purposes:

Parameter
Description
Default Value

INSTALLFOLDER

The installation folder for PowerShell Universal

%ProgramFiles(x86)%\Universal

TCPPORT

The TCP port the HTTP server will be listening on.

5000

REPOFOLDER

The repository folder to save the configuration files to.

%ProgramData%\UniversalAutomation\Repository

CONNECTIONSTRING

The SQL, SQLite, or PostgreSQL connection string.

Data Source=%ProgramData%\UniversalAutomation\database.db

DATABASETYPE

SQL, SQLite, or PostgreSQL

SQLite

STARTSERVICE

Whether to start the service after install (0 or 1)

1

SERVICEACCOUNT

The service account to set for the Windows service. Use the format of domain\username.

None

SERVICEACCOUNTPASSWORD

The service account password to set for the Windows Service. The password will be masked with ***'s in the installer log.

None

TELEMETRY

Anonymous telemetry collection

0

ADDPSMODULEPATH

Adds the PowerShell Universal module directory to the PSModulePath environment variable.

1

STARTSERVICE

Whether to start the service after install.

1

INSTALLTYPE

Whether to perform a server or user install.

Server

Example

The example below shows how to run msiexec.exe to install PowerShell Universal and provide parameters to the installer:

ZIP Install

You can also download the ZIP from our Downloads page if you would like to xcopy deploy the files on Windows or Linux.

Windows

You can start Universal by unzipping the contents, unblocking the files and then executing Universal.Server.exe.

Linux

You can use the following command line on Linux to install and start PowerShell Universal:

Linux Service

You can use systemd to start PowerShell Universal as a service. The below script is an example of downloading a version of PowerShell Universal and installing it as a service:

PowerShell Module

You can use the PowerShell Universal PowerShell module to install the Universal server. To install the module, use Install-Module.

To install the Universal server, you can use Install-PSUServer.

Running this command on Windows creates and starts a Windows service on your machine. Running this command on Linux creates and starts a systemd service on your machine. Running this command on Mac OS downloads and extracts the PowerShell Universal server.

Docker

See the Docker page.

IIS Install

Please visit the IIS hosting documentation for information on how to configure PowerShell Universal as an IIS website.

Antivirus Configuration

PowerShell Universal takes full advantage of PowerShell and the PowerShell SDK. It includes PowerShell scripts directly in the product. Consider configuring antivirus to allow execution of PowerShell scripts in PowerShell Universal.

Directories

The following directories contain examples from a standard Windows system of scripts and executable files that you may need to exclude from antivirus checks. Changing paths within appsettings.json or within the installer requires changing which directories are excluded.

Path
Description

%ProgramData%\PowerShellUniversal

Contains log files and appsettings.json

%ProgramData%\UniversalAutomation

Contains PowerShell scripts and artifacts. Contains the single file database when not using SQL integration.

%ProgramFiles(x86)\Universal

Contains PowerShell Universal application executables, libraries and modules.

Executables

It may be necessary to exclude certain executables that run PowerShell scripts. The below is a list of executables that run PowerShell from PowerShell Universal.

Name
Description

Universal.Server.exe

The PowerShell Universal core service.

PowerShellUniversal.Host.exe

The PowerShell Universal host environment executable.

pwsh.exe

PowerShell 7.x

PowerShell.exe

PowerShell 5.x

Default Admin Name and Password

You can use the $ENV:PSUDefaultAdminName and $ENV:PSUDefaultAdminPassword environment variables to change this behavior. These values are only used if no administrator account already exists. This is useful for cloud-based installations.

Agent

The PowerShell Universal Agent executes Event Hub actions. Install it depending on your environment:

Windows (MSI)

The PowerShell Universal Agent MSI is on our download page. After installing the MSI, a PowerShell Universal Agent service runs on your machine. Configure it to connect to PowerShell Universal.

ZIP

ZIP files for each platform we support are on our downloads page. Each ZIP contains a PSUAgent.exe or PSUAgent file that can start an agent. Run the process as a service for it to start whenever the machine reboots.

Docker

The ironmansoftware/universal-agent:latest container image provides the PowerShell Universal Agent as a Linux docker container.

Next Steps

At this point, Universal is up and running. Visit http://localhost:5000 or your default port to navigate to the admin console. Log in with the default admin name and password or create a default admin account.

Last updated

Was this helpful?