- Docker Engine
- MongoDB
- Redis
- Kafka
- Elasticsearch
The service is pre-configured with most default values. However, some environment variables require customization during setup.
Dependencies overview
Configuration
Set application defaults
Define the default application name for retrieving content:If this configuration is not provided, the default value will be set to
flowx.Configuring authorization & access roles
Connect the CMS to an OAuth 2.0 identity management platform by setting the following variables:
For detailed role and access configuration, refer to:
FlowX CMS access rights
Configuring Runtime Manager service account
The CMS service requires access to the Runtime Manager service account for operations such as merging media file updates, managing builds, and handling application version transitions.This service account is required for CMS to perform operations like merging media file updates and coordinating with the Runtime Manager service. The service account must exist in Keycloak with the appropriate roles assigned.
Configuring MongoDB
The CMS requires MongoDB for taxonomy and content storage. Configure MongoDB with the following variables:Set
MONGOCK_TRANSACTIONENABLED to false due to known issues with transactions in MongoDB version 5.Configuring MongoDB (runtime database - additional data)
CMS also connects to a Runtime MongoDB instance for operational data:Configuring Redis
The service can use the same Redis component deployed for the engine. See Redis Configuration.
Configuring Kafka
Connection settings
Auth and retry configuration
Consumer group configuration
Consumer thread configuration
Topic configuration
The suggested topic pattern naming convention:Content request topics
Audit topics
Application resource usage validation
Inter-Service topic coordination
When configuring Kafka topics in the FlowX ecosystem, it’s critical to ensure proper coordination between services:-
Topic name matching: Output topics from one service must match the expected input topics of another service.
For example:
KAFKA_TOPIC_APPLICATION_RESOURCE_RESELEMUSAGEVALIDATION_OUT_CMSon Application Manager must matchKAFKA_TOPIC_APPLICATION_IN_RESUSAGEVALIDATIONon CMS
-
Pattern consistency: The pattern values must be consistent across services:
- Process Engine listens to topics matching:
ai.flowx.dev.engine.receive.* - Integration Designer listens to topics matching:
ai.flowx.dev.integration.receive.*
- Process Engine listens to topics matching:
-
Communication flow:
- Other services write to topics matching the Engine’s pattern → Process Engine listens
- Process Engine writes to topics matching the Integration Designer’s pattern → Integration Designer listens
The exact pattern value isn’t critical, but it must be identical across all connected services. Some deployments require manually creating Kafka topics in advance rather than dynamically. In these cases, all topic names must be explicitly defined and coordinated.
Kafka authentication
For secure environments, enable OAuth authentication with the following configuration:Configuring logging
Configuring file storage
Public storage
Private storage
Private CMS securely stores uploaded documents and AI-generated documents, ensuring they are accessible only via authenticated endpoints.Private CMS ensures secure file storage by keeping documents hidden from the Media Library and accessible only through authenticated endpoints with access token permissions. Files can be retrieved using tags (e.g., ai_document, ref:UUID_doc) and are excluded from application builds.
Configuring file upload size
Configuring application management
Starting from version 4.1, use the following configuration. This setup is backwards compatible until version 5.0.

