Before installing OutSystems on-premises, check its hardware and software requirements. Once you're ready to start the installation, head to Install and Set Up OutSystems.
This section summarizes the requirements for installing the Platform Server in your data center.
|Operating System||Application Server||Database Management System||Additional Software Requirements|
The supported Operating System configurations mentioned in the above table need to be deployed on bare metal or hardware virtualization technologies (e.g. VMware, KVM).
Future revisions of OutSystems may require the installation of an update of any of these components, within the major versions mentioned in the above table.
Apart from standard Oracle Database setups, OutSystems Platform 8.0 and onwards works with Oracle Exadata Database Machines running with Oracle Linux 5.5 or higher.
Cache Invalidation Service
OutSystems Cache Invalidation Service requires a RabbitMQ Server version 3.7.x with Erlang version 20.x.
While installing the OutSystems Platform Server you will be provided with a script that simplifies the local installation of these two components. Alternatively, you can use an existing RabbitMQ Server and Erlang installation as long as it fulfills the same version requirements.
Amazon RDS considerations
OutSystems supports Microsoft SQL Server 2016, Microsoft SQL Server 2017, and Oracle 12c on Amazon RDS. The database instance class must fulfill the following requirements:
- 1 vCPU (virtual central processing unit) or higher;
- 1 ECU (EC2 Compute Unit) or higher;
- 3.75 GiB of memory or higher;
- "Moderate" network performance or higher.
Example of a DB instance class fulfilling these requirements: "db.t2.medium".
Microsoft Azure considerations
OutSystems supports Microsoft Azure SQL Database V12 with the following considerations:
- The MDC (Multiple Database Catalogs) feature is not supported;
- Connecting to Azure SQL using Windows Authentication is not supported;
- The database service tier must be at least “S3”;
- Currently, Azure SQL does not support customizing the timezone from UTC.
OutSystems also supports SQL Server running on an Azure Virtual Machine.
Integration with external systems
The following systems are certified to integrate with OutSystems.
|SQL Server Database|
|Azure SQL Database|
The NLS_CHARACTERSET must be set to WE8MSWIN1252 or AL32UTF8.
The installation of the IBM iAccess software is required in all Front-End and Deployment Controller server machines.
To develop your applications using OutSystems, developers need to install Service Studio and Integration Studio development tools on their desktops.
Installation requirements for these tools are as follows.
|Hardware (minimum requirements)|
|Supported Operating Systems|
|Required Network Connection|
|Minimum speed of 1 Mbps for both downloading and uploading.|
These requirements apply, even when installing the development tools on a virtual machine.
|Mobile Device Browsers
Note that only the default browsers of the operating systems listed above are supported.
Recommended specifications for iOS:
Recommended specifications for Android:
Note: Only official Android and iOS ROMs are supported.
Containers only expose HTTP port 80; HTTPS connections must be ensured by the load balancer, following an SSL offload scenario.
Follow the instructions in End-to-end SSL and SSL Offloading, You do not need to follow the step instructing you to insert a record in the
OSSYS_PARAMETER table, since the platform already performs this task when deploying an application to containers.
To deploy OutSystems applications to Docker containers you will need a Docker infrastructure able to run standard Docker Windows Server containers, i.e. Windows Server containers that only use the functionality provided by default in a Docker installation.
The minimum required Docker infrastructure consists of a Docker Engine installation, i.e. the client-server technology that builds and runs containers using Docker components and services. The engine must support and be able to run Windows Server containers.
The minimum recommended Docker version is the following:
- Docker client/server version 17.10
The machine running Docker must fulfill the following OS/software requirements:
- Windows Server 2016 (version 1709 or later);
- .NET Core Windows Server Hosting bundle installed.
OutSystems also supports the following Docker-based hosting technologies:
- Amazon ECS (Elastic Container Service);
- Azure Container Service (ACS).
The Docker Secrets functionality is not supported, since its support on Windows containers is not yet ready for production use.
While having a Docker registry is not mandatory, it is highly recommended. You can use any Docker registry as long as it supports storing and retrieving images for Windows Server containers.
For example, you can use one of the following docker registries (either on-premises or in the cloud):
- Docker Hub;
- Docker Trusted Registry.
Container Cluster Orchestrators
When deploying an OutSystems application in a Docker container it's necessary to map port 80 exposed by the container to an available port in the container host (usually a high-numbered port selected by the container runtime).
Since this port in the container host may change and each container needs at least port 80 mapped in the container host machine, the recommended approach is to set up a container cluster, together with a container cluster manager/orchestrator, that seamlessly handles all the routing to the right container and port.
You can use OutSystems with the following container cluster orchestrators:
- Docker Swarm;
- Google Kubernetes;
- Amazon Elastic Container Service.
If you are using Docker Swarm, please read the official Docker Swarm documentation. If you are using Kubernetes, please read the official Kubernetes documentation that includes detailed instructions on using Kubernetes with a cluster.
The container cluster manager/orchestrator can be installed anywhere as long as it allows you to manage the Docker engine on which you will be running the containers with OutSystems applications.
Base Image Availability
Ensure that all machines that will build/run the application images have the
microsoft/dotnet-framework:4.7.1-runtime base image present in the machine. If the base image is not in the machine, the first build/run may timeout while the base image is downloaded.
Pivotal Cloud Foundry
To deploy your OutSystems applications to Pivotal Cloud Foundry (PCF) you will need to have access to a PCF infrastructure. It must be able to run Windows stemcells, i.e. you will need to install a Windows tile in your infrastructure.
The PCF infrastructure must have a Pivotal Application Service for Windows tile installed. To install a Windows tile, follow the instructions provided by Pivotal for the Windows 2016 tile.
Note: The Windows 2012r2 tile is not supported.
PCF Internal Routing
You will need to ensure that your PCF internal router can route requests to OutSystems applications both when these come from your internal network, as well as when coming from the outside.
We recommend adding two domains to your Pivotal Apps Manager's "org" (organization):
- A subdomain of your main shared domain that will be used as the PCF's deployment zone address. All the modules of each OutSystems application deployed to this zone will be mapped here.
If your main shared domain is
apps.pcf.example.com, add a new domain called
- A domain equal to the public address of your main load balancer and reverse proxy. This lets the PCF internally route requests coming from outside your internal network.
If your main load balancer and reverse proxy is publicly accessible using
site.example.com, add exactly this value as a new domain.
Command-line Tools (cf CLI)
The deployment instructions provided by OutSystems use the Cloud Foundry Command Line Interface ("cf CLI") tool provided by Pivotal.
You must install "cf CLI" on the machine executing the deployment to PCF to be able to run the cf command-line executable.
You will also need to log in to Cloud Foundry using "cf CLI", specifying an API endpoint and an org (organization), before you are able to run commands like cf push successfully.