You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
description: "This API allows you to create and manage environments in Private Mendix Platform."
6
+
restapi: true
7
+
weight: 60
8
+
linktitle: "Deploy API"
9
+
---
10
+
11
+
{{% alert color="info" %}}
12
+
This document is about [Private Mendix Platform](/private-mendix-platform/) API. This API is only available on instances of Private Mendix Platform. For [Mendix on Kubernetes](/developerportal/deploy/private-cloud/) API, see [Mendix on Kubernetes Build API](/apidocs-mxsdk/apidocs/private-cloud-build-api/) and [Mendix on Kubernetes Deploy API](/apidocs-mxsdk/apidocs/private-cloud-deploy-api/).
13
+
{{% /alert %}}
14
+
15
+
## Introduction
16
+
17
+
The Private Mendix Platform Group API allows you to manage user groups in Private Mendix Platform. You can use the API to do the following:
18
+
19
+
* Create a new environment for the application
20
+
* Retrieve all environments for the application
21
+
* Retrieve a specified environment for the application
22
+
* Update a specified environment for the application
23
+
* Delete a specified environment for the application
Copy file name to clipboardExpand all lines: content/en/docs/deployment/docker-deploy/docker-pad.md
+174Lines changed: 174 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -235,3 +235,177 @@ The Mendix Runtime exposes health check endpoints that can be used to monitor th
235
235
| `/health/ready` | Returns the readiness status — indicates if the app is ready to serve traffic |
236
236
237
237
These endpoints are especially useful when integrating with orchestration platforms such as Kubernetes, which rely on liveness and readiness probes to manage container lifecycle.
238
+
239
+
## Reverse Proxy
240
+
241
+
This section serves as a reference guide and starting point for configuring a reverse proxy on Docker. The configurations provided are intended for illustrative purposes only, as the required settings vary depending on your specific network environment and infrastructure setup.
242
+
243
+
{{% alert color="info" %}}
244
+
This example implementation is provided as-is, and is not covered under official support. Support requests related to this specific configuration cannot be addressed.
245
+
{{% /alert %}}
246
+
247
+
### Configuring Nginx
248
+
249
+
To configure Nginx, perform the following steps:
250
+
251
+
1. Define services for the app and Nginx reverse proxy:
252
+
253
+
```text
254
+
services:
255
+
app:
256
+
build: .
257
+
ports:
258
+
- "127.0.0.1:8080:8080" # Bind only localhost
259
+
environment:
260
+
- SPRING_PROFILES_ACTIVE=docker
261
+
nginx:
262
+
image: nginx:alpine
263
+
ports:
264
+
- "80:80"
265
+
volumes:
266
+
- ./nginx.conf:/etc/nginx/nginx.conf:ro
267
+
depends_on:
268
+
- app
269
+
```
270
+
271
+
2. Run the following command: `docker-compose up --build`.
272
+
3. Create the following `nginx.conf` file to proxy requests to the app:
This configuration exposes only port 80 publicly while acting as a proxy to your app on the internal port 8080.
291
+
292
+
### Configuring Traefik
293
+
294
+
To simplify setting up Traefik as a reverse proxy for your app running in a Docker container, use Docker Compose. This configuration exposes Traefik on ports `80/8080`, automatically discovers your app container through labels, and routes traffic to it.
295
+
296
+
Traefik uses two networks: *frontend* (public) and *backend* (internal).
2. Run the following command: `docker compose up -d --build`.
337
+
338
+
You can now access your app at `http://localhost`. Traefik proxies to `app:8080` internally.
339
+
340
+
#### Key Traefik Labels Explained
341
+
342
+
This section explains the main labels used by Traefik.
343
+
344
+
* `traefik.enable=true` - Enables Traefik for this container.
345
+
* `traefik.http.routers.java-app.rule=Host(yourapp.example.com)` - Routes requests matching the host to this service.
346
+
* `traefik.http.services.java-app.loadbalancer.server.port=8080` - Forwards to your app's internal port.
347
+
348
+
Traefik automatically detects changes through a Docker socket. You do not need to restart it to update the labels.
349
+
350
+
#### Main Differences between Traefik and Nginx
351
+
352
+
This section explains how Traefik proxies differ from Nginx.
353
+
354
+
* Traefik does not use static config files. Instead, the configuration is automatic through the use of labels.
355
+
* A dashboard available at `http://localhost:8080` shows the routes.
356
+
* You can easily scale by duplicating the `app service` with unique router rules (for example, `Host(app2.local)`).
357
+
358
+
## Example High Availability Implementation
359
+
360
+
High availability (HA) requires redundancy, health checks, and restarts to handle failures. Scale for HA with Docker Compose (for local or development environments) or Kubernetes.
361
+
362
+
This section serves as a reference guide and starting point for configuring high availability on Docker. The configurations provided are intended for illustrative purposes only, as the settings will vary depending on your specific network environment and infrastructure setup.
363
+
364
+
{{% alert color="info" %}}
365
+
This example implementation is provided as-is, and is not covered under official support. Support requests related to this specific configuration cannot be addressed.
366
+
{{% /alert %}}
367
+
368
+
1. Configure the *docker-compose.yml* as in the following example:
Copy file name to clipboardExpand all lines: content/en/docs/deployment/on-premises-design/ms-windows/sql-server/setting-up-a-new-sql-server-database.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -19,15 +19,15 @@ Some of these steps are only required for specific versions of SQL Server or Men
19
19
20
20
When setting up a new database for Mendix, you can leave most of the settings to the default configuration. When looking at the general settings, you only need to set up the database name. Set up the database files according to the [Microsoft SQL Server best practices](https://www.mssqltips.com/sqlservertip/4891/sql-server-installation-best-practices/).
{{< figure src="/attachments/deployment/on-premises-design/ms-windows/sql-server/setting-up-a-new-sql-server-database/sql-server-general.png" alt="New Database dialog General page with database name and files configuration" >}}
23
23
24
24
In the database options, the default properties need to be evaluated. When choosing a collation, pay attention to the type of collation you are going to use. Mendix uses UTF-8 for all data evaluation. Depending on your exact locale, you will most likely want to choose one of the `SQL_Latin1_General_` collations. The exact encoding depends on your OS. For an **en_US** installation, for example, the encoding is `CP1`.
25
25
26
26
The last two collation arguments identify how sorting and uniqueness are interpreted. For example, the collation argument `CS` indicates that the collation sorting style is case sensitive. For more information on collations and case sensitivity, see [Case-Sensitive Database Behavior](/refguide/case-sensitive-database-behavior/) and the Microsoft documentation [Windows Collation Name](https://docs.microsoft.com/en-us/sql/t-sql/statements/windows-collation-name-transact-sql).
27
27
28
28
Mendix recommends using the **Simple** recovery model option. Mendix does not use the full functionality offered in the **Full** recovery model option; although you can successfully use the **Full** recovery model, it could increase the data usage of all the transactions and might slow down any rollbacks in case of an error.
{{< figure src="/attachments/deployment/on-premises-design/ms-windows/sql-server/setting-up-a-new-sql-server-database/sql-server-options.png" alt="New Database dialog Options page showing collation and recovery model settings" >}}
31
31
32
32
After the database is created, the Mendix Runtime can initiate the initial setup and prepare all the tables and functions for usage by the platform. Some of these queries require `sysadmin` privileges. The `sysadmin` role can be temporarily assigned to the user, or these queries can be executed by the administrator. Other queries need privileges that are implicitly assigned to the `db_owner` role. If the user used by the Mendix Runtime does not have enough permissions for any of these queries, you can run them manually – see below for more information.
Copy file name to clipboardExpand all lines: content/en/docs/marketplace/platform-supported-content/modules/global-inbox.md
+14-9Lines changed: 14 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -101,24 +101,23 @@ Make sure the Global Inbox app is deployed and running before deploying the Publ
101
101
***AppBaseUrl**: Must include the protocol (http:// or https://) and must not end with a trailing slash. It is used as the base URL when redirecting users to the publisher apps.
102
102
5. When a user opens a task from the **Global Inbox**, they are redirected to the corresponding task page in the Publisher Application through a deeplink. Because the user entered the application through the Global Inbox instead of the normal navigation flow, developers must decide how the application should behave when the user completes the user task and/or closes the page. Developers can either change show page action in the deeplink microflow **DL_WorkflowUserTask_ShowUserTaskPage** to redirect to another page or adjust the default deeplink landing page in **UseMe** > **Deeplink** > **Deeplink Landing Page** to meet their business needs. If further customization is required, it is possible to adjust the logic for the outcome buttons in each of the task pages.
103
103
104
-
### Setting up Business Events
104
+
### Setting up Business Events Locally
105
105
106
-
Configure the [Mendix Event Broker](https://marketplace.mendix.com/link/component/202907) or [your own Kafka](/appstore/services/business-events-deployment/#byok) cluster. Refer to the [Mendix Event Broker](/appstore/services/event-broker/) documentation for relevant steps.
107
-
108
-
### Local Setup
109
-
110
-
For local development and testing, the Event Broker can be deployed using the [Local Setup Tool](https://github.com/mendix/event-broker-tools). For more information, see [Deployment](/appstore/services/business-events-deployment/#deployment).
111
-
112
-
In both the **Global Inbox** and **Global Inbox Connector** modules, configure the following application constants:
106
+
For local development and testing, the Event Broker can be deployed using the [Local Setup Tool](https://github.com/mendix/event-broker-tools). For more information, see the [Deployment](/appstore/services/business-events-deployment/#deployment) section in *Deploy a Business Event*. In both the **Global Inbox** and **Global Inbox Connector** modules, configure the following application constants:
113
107
114
108
***ServerUrl**: the URL of the local broker instance
109
+
115
110
***ChannelName**: the name of the event channel used for publishing and subscribing to Business Events
116
111
117
112
These settings ensure that Business Events are correctly routed between Publisher Applications and the Global Inbox during local testing.
118
113
114
+
For instructions on setting up a local test environment, refer to the Mendix Academy guide: [Set up your Local Test Environment](https://academy.mendix.com/index3.html#/modules/622/lectures/4833/Set-up-your-Local-Test-Environment).
115
+
119
116
### Deployment
120
117
121
-
For deployment, the Global Inbox requires the Mendix Event Broker or an external Kafka cluster. For more information, see the [Production Deployment](/appstore/services/business-events-deployment/#production-deployment) section in *Deploy a Business Event*.
118
+
#### Mendix Public Cloud
119
+
120
+
For deployment, the Global Inbox requires the Mendix Event Broker or [Bring Your Own Kafka](/appstore/services/business-events-deployment/#byok). For more information, see the [Production Deployment](/appstore/services/business-events-deployment/#production-deployment) section in *Deploy a Business Event*.
122
121
123
122
Ensure the Mendix Event Broker is enabled for all apps and environments, and deploy applications in the correct order: Global Inbox application must be running before the publisher applications.
124
123
@@ -128,6 +127,12 @@ If you are deploying your apps to Mendix Cloud for the first time, you must firs
128
127
129
128
Ensure the **Global Inbox Connector** constants are configured in each Publisher Application as part of the deployment process.
130
129
130
+
#### Mendix Free Cloud
131
+
132
+
When deploying to the Mendix Free Cloud, the [Mendix Event Broker](/appstore/services/event-broker/) is provided as a shared, multi-tenant service.
133
+
134
+
Within this setup, no additional configuration or license is required. The Event Broker is automatically available after deploying your app and enabling business events.
135
+
131
136
## Security
132
137
133
138
Any user that can see a task in Publisher Application can see the same task in the **Global Inbox**. This is based on the **System.User.Name** attribute that is used as the unique identifier to link users across the applications. For this reason:
Copy file name to clipboardExpand all lines: content/en/docs/refguide/modeling/security/app-security/anonymous-users.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,6 +21,10 @@ The properties of anonymous users are described in the table below:
21
21
| Allow anonymous users | When **Yes** is selected, anonymous users are allowed. End-users do not have to sign in to access the application. <br />When **No** is selected, anonymous users are not allowed. End-users have to sign in to access the application. |
22
22
| Anonymous user role | The user role that end-users of your application have when they are not signed in. This tells the application which role should be automatically applied to anonymous users who access the app. The **Allow anonymous users** property should be set to **Yes** to select an anonymous user role. |
23
23
24
+
{{% alert color="warning" %}}
25
+
Enabling anonymous users allows anyone to use your app without signing in. To prevent unintended data exposure, ensure that the anonymous user role has limited access across your app by configuring appropriate entity and microflow access rules.
Copy file name to clipboardExpand all lines: content/en/docs/refguide10/modeling/security/app-security/anonymous-users.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,6 +21,10 @@ The properties of anonymous users are described in the table below:
21
21
| Allow anonymous users | When **Yes** is selected, anonymous users are allowed. End-users do not have to sign in to access the application. <br />When **No** is selected, anonymous users are not allowed. End-users have to sign in to access the application. |
22
22
| Anonymous user role | The user role that end-users of your application have when they are not signed in. This tells the application which role should be automatically applied to anonymous users who access the app. The **Allow anonymous users** property should be set to **Yes** to select an anonymous user role. |
23
23
24
+
{{% alert color="warning" %}}
25
+
Enabling anonymous users allows anyone to use your app without signing in. To prevent unintended data exposure, ensure that the anonymous user role has limited access across your app by configuring appropriate entity and microflow access rules.
Copy file name to clipboardExpand all lines: content/en/docs/refguide9/modeling/app-explorer/security/app-security/anonymous-users.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,6 +21,10 @@ The properties of anonymous users are described in the table below:
21
21
| Allow anonymous users | When **Yes** is selected, anonymous users are allowed. End-users do not have to sign in to access the application. <br />When **No** is selected, anonymous users are not allowed. End-users have to sign in to access the application. |
22
22
| Anonymous user role | The user role that end-users of your application have when they are not signed in. This tells the application which role should be automatically applied to anonymous users who access the app. The **Allow anonymous users** property should be set to **Yes** to select an anonymous user role. |
23
23
24
+
{{% alert color="warning" %}}
25
+
Enabling anonymous users allows anyone to use your app without signing in. To prevent unintended data exposure, ensure that the anonymous user role has limited access across your app by configuring appropriate entity and microflow access rules.
| Workflow Message Events | General Availability: Mx 11.11|
42
42
43
43
{{% alert color="info" %}}
44
44
¹Limitations: Initially only Mendix Cloud GenAI Resources as provider, and only design-time modification of prompts and other agent settings. Incrementally, we will remove these limitations.
0 commit comments