Skip to main content
The mogenius platform is available as a SaaS option on app.mogenius.com. If you prefer the self-hosted version of mogenius, you can install it with our Helm chart. This way you can run mogenius on your own clusters and even in air-gapped environments.

Prerequisites

  • A Kubernetes cluster with at least 1 CPU and 1 GB of memory available.
  • Credentials for pulling the mogenius images from the container registry (see below).
  • The traefik ingress controller.
  • A working local installation of Helm.
  • A MySQL server (optional).
Running the platform as a self-hosted version requires a subscription. Contact our sales team for more information.

Quickstart

For a quick installation of the mogenius platform with defaults where possible, follow these steps.

Create a Namespace

On the cluster where you’re installing the mogenius platform, create a new namespace mogenius-platform.

Create Secrets

The platform services require a few secrets containing critical credentials that aren’t created by the Helm chart. The following secrets are required for the minimum configuration. Additional secrets can be used when working with more sophisticated Helm chart configurations. 1. Container Registry
After obtaining a subscription for the self-hosted version, you will have received credentials for the container registry where the platform images are stored. In your mogenius-platform namespace create a new secret mo-registry-credentials and store the credentials as type kubernetes.io/dockerconfigjson.
2. Valkey (Redis-compatible)
Create a secret mo-redis-secret with the key REDIS_SECRET. Define a secure password as a value that you store in a safe place (e.g. a vault).
3. Encryption Key
Create a secret mo-platform-shared with the key MO_CORE_NEST__SSH_SYM_ENC_KEY. As a value, use openssl rand -base64 32 or a similar method on your terminal to create a base64-encrypted key.
4. MySQL
Create the secret mo-mysql-secret with the keys MYSQL_PASSWORD and MYSQL_ROOT_PASSWORD. Use secure passwords as values.
5. Admin User
Create the secret mo-platform-user-secret with the following keys and values:
MO_USER_NEST__SYSTEM_ADMIN_EMAIL
The email address to log in with your admin user.
MO_USER_NEST__SYSTEM_ADMIN_PASSWORD
The password for your admin user.
MO_CORE_NEST__SSH_SYM_ENC_KEY
Use the same value that you set in the secret mo-platform-shared.
MO_USER_NEST__JWT_PRIVATE
Create a private key using the following commands and retrieve the value from the text file.
MO_USER_NEST__JWT_PUBLIC
Create a public key using the following commands and retrieve the value from the text file.
MO_USER_NEST__SESSION_SECRET
Define a secure secret of your choice.

Prepare your values.yaml

The Helm chart supports wide range of values that you can use to configure your installation of the mogenius platform. Skip to values for a full reference of the chart. Below is an example values.yaml for a minimal setup to install the mogenius platform in a development environment. Make sure to review the configuration and ensure that it matches your infrastructure.
values.yaml quickstart example
This chart configuration deploys the MySQL Docker image as part of the platform deployment. This setup is not recommended for running the mogenius platform in production scenarios. We recommend configuring the mysql values with connection to a high-availability MySQL for use in a production environment.

Deploy the Helm chart

Run the following command on your cluster to install the Helm chart with your values.yaml.

Access the mogenius web interface

Check the status of the installation and make sure all Pods are starting properly.
When all Pods are Running, access the mogenius platform with the hostname you specified in your Ingress (e.g. mogenius.yourdomain.com). You can log in with the credentials of your admin user.

Next steps

Now that mogenius is up and running you can prepare the platform for your team. Check out the following resources as next steps:

Support

Need help setting up the mogenius platform? Contact us via support@mogenius.com.

Values

Global Settings

Ingress

Default ingress annotations:

Feature Toggles

Platform Services

mo_platform (Frontend)

mo_platform_api (API Service)

mo_platform_user (User Service)

OpenID Configuration:

mo_platform_websocket (WebSocket Service)

mo_platform_notification (Notification Service)

mo_platform_queue (Queue Service)

mo_platform_message_dispatcher (Message Dispatcher)

Valkey (Redis-compatible Cache)

The platform uses Valkey, an open-source Redis-compatible in-memory data store, for caching and message queuing. The chart deploys multiple Valkey instances for different purposes.

mo_platform_api_valkey

mo_valkey_shared

Shared Valkey instance used for queue processing and cross-service communication.

mo_websocket_valkey

mo_user_valkey

mo_message_dispatcher_valkey

MySQL

Storage