On-premises UI

The on-premises UI is a standalone version of Structurizr that can be run locally on your own servers, providing all of the major features needed to visualise, document and explore your software architecture.

Deployment

The on-premises UI is a Java EE web application, packaged as a .war file for deployment into any compatible Java EE server such as Apache Tomcat. Here are some basic instructions that assume you are using a freshly downloaded version of Apache Tomcat. In the instructions that follow, TOMCAT_HOME refers to the location of the Apache Tomcat installation.

Pre-requisites

On-premises UI

After downloading the on-premises UI, copy the structurizr-onpremises-ui.war file to TOMCAT_HOME/webapps/ROOT.war. The on-premises UI must be installed as the root web application. Delete the existing ROOT directory if it exists. You then need to add some configuration information. To do this, create a file called ROOT.xml in the TOMCAT_HOME/conf/Catalina/localhost directory with the following content (replacing ... with your license key).

<Context>
    <Environment name="structurizr/dataDirectory" value="/usr/local/structurizr" type="java.lang.String"/>
    <Environment name="structurizr/license" value="..." type="java.lang.String"/>
</Context>

The parameters being configured in this file are as follows.

  • structurizr/dataDirectory: The location where Structurizr data will be stored.
  • structurizr/license: The Structurizr on-premises license key.

Usage

After starting Apache Tomcat, you should be able to navigate to http://localhost:8080 in your browser.

On-premises UI home page

Usage

Using the on-premises UI is much the same as the cloud version. Simply create a workspace using the "Create a new workspace" link on the home page, make a note of the API key/secret pair and upload your workspace content via Java or C# code using the on-premises API.

Cloud service vs on-premises product

The key differences between the cloud service and the on-premises UI are as follows:

  • The role-based security features have been taken out to simplify deployment, operation and support. If you need additional security, you can either modify the web.xml file to add security constraints or place the on-premises UI behind (e.g.) Apache, and let that manage access control or single-sign on.
  • Structurizr Express is not available.

Pricing and licensing

The on-premises UI is available as a perpetual license, with support and updates included for one year.