Licensing Apps
Introduction
On Mendix Cloud, you can build Free Apps, which let you try things out and build and test apps using all the functionality of Mendix.
You can also deploy apps without a license to another public or private cloud of your choice, such as SAP Business Technology Platform (SAP BTP). This gives you the opportunity to try things out and to build and test apps using the functionality of Mendix as well as your target cloud.
Unlicensed apps, running outside Mendix Cloud, have some restrictions. These restrictions are listed in the table below.
Feature | Unlicensed App | Licensed App |
---|---|---|
Number of Concurrent Users | 6 | Depends on your pricing plan.¹ ² |
Time limitation | Runtime stops after 2-4 hours (randomly chosen) regardless of user activity.³ | Does not have a time limitation. |
Number of Named Users | No limit | Depends on your pricing plan.¹ |
¹ More information on the capabilities of different license options is available on Mendix Platform Pricing.
² End-users of your app are classified as either internal or external. You will need to report this for licensing purposes using either the USAGE_METRICS_EMAIL_FIELDS
custom variable (if you are using email domain to distinguish between them) or by populating the user type for each end-user of your app. Only end-users whose Mendix accounts are marked as Active are counted towards the number of end-users of the app.
³ Depending on the configuration of your chosen cloud, a container and runtime may be restarted if it appears unhealthy because the runtime has stopped.
For each environment for which you want to remove the restrictions placed on an unlicensed app, you need a license. The method for applying a license differs depending on where you are deploying your app.
The app checks for a license each time it is started. If the license expires while the app is running, it will continue to run until the next time it is started, when the license will be checked again.
Obtaining a Mendix License
You can obtain a Mendix license from Mendix Support, as described below. If you want to deploy to SAP BTP or Mendix for Private Cloud, you can also use this process to obtain a subscription secret. Follow these steps:
-
Open the Request New App Node app and use the form to fill in the basic information, such as the app name and hosting type. Click Next.
-
Depending on the hosting type you select, you may need to provide additional information about your app. For example, if you are deploying the app locally on a virtual machine, you need to provide the server ID. If prompted, fill in the requested information and click Next.
-
Click Save to submit your request.
Mendix Support will contact the Technical Contact via a ticket in the Support Portal.
If you are hosting your app somewhere else, such as on Cloud Foundry, Mendix Support will provide the following license credentials:
- LicenseId – a unique identifier for your license, based on where it is being deployed
- LicenseKey – a Base64 string
An example LicenseId is aab8a0a1-1370-467e-918d-3a243b0ae160
. The LicenseKey is a very long Base64 string.
Activating a Mendix License
Once you have obtained a new Mendix license, link it to your app as described below. The specific steps depend on where you deploy your app.
Mendix Cloud
For a Mendix app to run in production on Mendix Cloud, it must be linked to a licensed node in Mendix Cloud. This process is described in Licensing Mendix Cloud Apps.
SAP BTP
To license a Mendix app on SAP BTP, you need to supply a Subscription Secret that is linked to your app.
You can add this subscription secret as part of creating an environment on SAP BTP. You can also add or change the subscription secret on the Environment Details page of the environment you wish to license.
For more information, see SAP Business Technology Platform.
Siemens Insights Hub
To license an Insights Hub app, you need to provide your License ID and License Key as Cloud Foundry environment variables. See Cloud Foundry, below, for instructions on how to do this.
Mendix for Private Cloud
To license a Mendix app on Mendix for Private Cloud, you need to supply a Subscription Secret or license credentials for your app. See below for how it can be added to either a Connected or Standalone cluster.
In addition to the licenses for your apps, you will also need to license the Mendix Operator which helps deploy your app to a Private Cloud environment. For details on the Mendix Operator license, see Licensing Mendix for Private Cloud.
Mendix for Private Cloud Connected
You can add the subscription secret as part of creating an environment on Mendix for Private Cloud. You can also add or change the subscription secret on the Environment Details page of the environment you wish to license. For more information, see the Change Subscription Secret section of Deploying a Mendix App to a Private Cloud Cluster.
Mendix for Private Cloud Standalone
You will need to add the license credentials and configure the license in the Mendix Custom Resource (CR) for your Private Cloud environment. For more information, see the Editing the CR section of Using Command Line to Deploy a Mendix App to a Private Cloud Cluster.
Cloud Foundry
To activate a license on your app running on Cloud Foundry, you need the license credentials provided by Mendix Support.
The two environment variables LICENSE_ID
and LICENSE_KEY
need to be set to the values of the LicenseId and LicenseKey provided by Mendix Support. Do this by running the following two commands, replacing <YOUR_APP>
with the name of your app.
cf set-env <YOUR_APP> LICENSE_ID <LicenseId>
cf set-env <YOUR_APP> LICENSE_KEY <LicenseKey>
Then restart the app so that the environment variables are read and the license goes into effect.
Docker
To activate a license on your app running in a Docker container, you need the license credentials provided by Mendix Support.
Two additional environment variables, LICENSE_ID
and LICENSE_KEY
, need to be set to the values of the LicenseId and LicenseKey provided by Mendix Support. To do this, add them to the startup command for your container.
docker run -it \
… \
-e LICENSE_ID=<LicenseId> \
-e LICENSE_KEY=<LICENSE_KEY> \
mendix/mendix-buildpack:…
Kubernetes
To activate a license on your app running on Kubernetes, you need the license credentials provided by Mendix Support.
Two additional environment variables, LICENSE_ID
and LICENSE_KEY
, need to be set to the values of the LicenseId and LicenseKey provided by Mendix Support. To do this, add them to the deployment command for your app.
For full instructions on how to do this and how to supply the keys using a Secrets file, see the Deploying the Application section of Use Docker with Minikube.
Windows Server
To license a Mendix app on Microsoft Windows, follow these steps:
- Obtain your server ID.
- Request a license key from Mendix Support.
- Insert the license key on the server.
For full instructions on how to do this, see Activate a Mendix License on Microsoft Windows.
Unix-Like Server
To license a Mendix app on Linux or another Unix-like operating system, follow these steps:
- Open the interactive m2ee console.
- Use the command
show_license_information
to obtain your server ID. - Request a license key from Mendix Support.
- Activate your license on the server, using the m2ee command
activate_license
.
For more instructions on how to do this, see Unix-Like Deployment.