Managed services
Managed databases, middleware and applications (PostgreSQL, MySQL, Redis, RabbitMQ, Kafka, Keycloak, n8n, Metabase, Hasura, DocuSeal, Open WebUI) — how they work, and how to connect from your applications.
Managed services are ready-to-use infrastructure blocks (databases, cache, message queue) that you deploy like an application, in an environment, and that your applications consume through the project's internal network.
Available services
| Service | Use | Port | Backups | SQL console |
|---|---|---|---|---|
| PostgreSQL | Relational database (HA possible) | 5432 | ✅ | ✅ |
| MySQL | Relational database | 3306 | — | — |
| Redis | Cache / key-value | 6379 | — | — |
| RabbitMQ | Message queue (AMQP) | 5672 (UI: 15672) | — | — |
| Kafka | Distributed message log | 9092 | — | — |
| Keycloak | Identity, SSO (OIDC / SAML) | public URL | via its PostgreSQL | — |
| n8n | Workflow automation | public URL | through its PostgreSQL | — |
| Metabase | Dashboards and analytics | public URL | through its PostgreSQL | — |
| Hasura | GraphQL API over your databases | public URL | through its PostgreSQL | — |
| DocuSeal | Electronic signatures | public URL | through its PostgreSQL and its bucket | — |
| Open WebUI | Chat over your language models | public URL | through its PostgreSQL and its bucket | — |
ℹ️ PostgreSQL is the most complete service: Blue/Green high availability, automatic backups to object storage, and a built-in SQL console. The other services are deployed as single instances. Kafka deploys with 1 or 3 replicas — see Kafka.
ℹ️ Six of these blocks are applications, not services: Keycloak, n8n, Metabase, Hasura, DocuSeal and Open WebUI open in a browser at a public URL, have no port to connect to, and keep their data in a managed PostgreSQL that stays yours. DocuSeal and Open WebUI each add a NubiS3 bucket — signed documents for one, uploaded files for the other — created and deleted with the application.
⚠️ Open WebUI requires a PostgreSQL carrying the
vectorextension, and that extension can only be installed when the database is created. An existing PostgreSQL without it cannot host Open WebUI: the console greys out the choice rather than letting the deployment fail later.
ℹ️ MongoDB is no longer offered in the catalogue. Instances already deployed keep running and remain visible in the console.
How they work
- Each service is deployed into an environment of a project, just like an application.
- It gets a stable internal hostname of the form
service-name-xxxx-internal, reachable by the other applications of the same project/environment. - The credentials (user, password, database) are set at deployment time and kept encrypted — they never travel in clear text through the API.
- Access is internal to the cluster (no direct public exposure of a database).
Connecting an application to a service
The principle is always the same (illustrated in step 10 of the Quickstart):
- Deploy the service first (e.g. PostgreSQL).
- On the service's page, collect the connection string (internal host, port, database).
- Add it to your application's environment variables (e.g.
DATABASE_URL). - (Re)start the application.
⚠️ The wiring is explicit: Nubiecloud deploys the service, but you are the one copying the connection string over to your application.
Going further
- Managed services reference — versions, sizes, connection formats, SQL console, per service.
- Backups & restore — for PostgreSQL (and Odoo).