Skip to main content

Overview

Service Overview
Just tell Cerebrum what you need. “Create a Python API with PostgreSQL” or “add a Redis cache” — Cerebrum will build everything for you. This documentation explains how things work and helps when you want to configure details manually.

Creating a Service

Click Add Service and choose your source: Create Service options
After creation, Ardor initializes a dev container for your service. This may take some time depending on the service type.

Deployment

All services, except those based on Docker images, require a Dockerfile in the project root. The Dockerfile defines how your application is built and containerized.

Dockerfile Requirements

Your Dockerfile should:
  • Expose the port your application listens on
  • Define the command to start your application

Deployments Guide

Learn how deployments work — build process, environments, rollbacks, auto-deploy, and troubleshooting failed builds.

Resource Configuration

Services require CPU, RAM, and optionally storage resources to run. Configure resource allocation using sliders to match your application’s requirements and expected usage patterns. Service Resource Configuration Available resource ranges:
  • CPU: Adjustable from 0.1 to 4 cores
  • RAM: Configurable from 128MB to 8GB
  • Storage: Optional persistent storage from 1GB to 16GB
Not sure how much you need? Start with minimal values and adjust based on actual usage. If your service needs more than the available limits — reach out to us!

Networking

Each service gets network connectivity with two access options: Service Networking Configuration
VisibilityAccessBest For
PublicAnyone via public URLWeb apps, APIs, webhooks
PrivateOnly other services via internal URLDatabases, caches, internal microservices
Services can communicate with each other over the internal network using internal URLs — your API can talk to your database, your backend can call a cache, all without exposing anything to the internet.

Networking Guide

Learn how services connect, internal URLs, port configuration, and common architecture patterns.

Development Container

Each service gets its own isolated dev container — a live environment for you and Cerebrum to build, test, and iterate.
  • Isolated: Own filesystem, terminal, CPU/RAM, and development URL
  • Connected: Can communicate with other services via internal URLs
  • Live: Real-time code execution with hot reload

Application Entrypoint

When the dev container starts, it looks for app_entrypoint.sh in your project root. If found — your app starts automatically. If not — container waits in standby mode.
Something not working? Just ask Cerebrum — it can read logs, debug issues, fix code, and restart your container.

Empty Service Guide

Learn how to set up app_entrypoint.sh, project structure, and development workflow.

Variables and Secrets

Configure your services with environment variables and securely store sensitive data. Variables and Secrets Management
TypeStorageUse for
VariablesPlain text, visibleEndpoints, feature flags, config paths
SecretsEncrypted, maskedAPI keys, passwords, tokens

Variables & Secrets Guide

Learn about naming conventions, common use cases, security best practices, and how to read variables in your code.

Logging

Ardor automatically captures everything your app writes to stdout and stderr — just use print() or your favorite logging library. Service Logs Interface Three log types: Build Logs (Docker build), Runtime Logs (production), Dev Container Logs (development).

Logging Guide

Learn how to read logs, debug issues, add structured logging to your code, and best practices.

Best Practices

Resource Planning

Start with minimal resources and scale up based on actual usage.

Security

Use secrets for sensitive data. Never commit API keys to your repository.

Development Workflow

Build and test in dev container, then deploy to production.

Port Configuration

Always read the PORT environment variable — don’t hardcode ports.

What’s Next