Docs

Getting started

Install InfraLedger on one server, deploy an application and connect a database.

Installation files and configuration values are provided with early access. Request access

Overview

InfraLedger is a self-hosted platform made of three parts that run together:

  • An API that manages organizations, projects, applications and data services
  • A web dashboard that developers use instead of Docker commands, YAML or SSH
  • A PostgreSQL database that stores the platform's own state and audit log

On a single server, InfraLedger runs workloads with Docker. On a cluster, it runs the same workloads on Kubernetes.

InfraLedger control planeRuntimes on your servers DevelopersDashboard in the browser CI pipelineGit push or API call DashboardReact APIRoles checked on every callPostgreSQLEvery action, the audit log Provider layerOne API, two runtimes App usersInternetTraefikHTTPS and routingDockerOne serverKubernetesCluster, vcluster per tenant
How InfraLedger is built: the dashboard and API record every action in the platform database, and a provider layer runs the same workloads on Docker or Kubernetes.

Requirements

  • A 64-bit Linux server with Docker Engine and the Docker Compose plugin
  • Ports 80 and 443 reachable, so InfraLedger can serve apps over HTTPS
  • A domain or subdomain that points to the server, for the dashboard and your apps

Server sizing depends on how many applications and databases you plan to run. We size it with you during onboarding.

Install

Clone the files you received with your access, then start the platform:

Terminal
git clone <your-access-url> infraledger
cd infraledger
docker compose up -d

Docker Compose starts the API, the dashboard, the platform database and the reverse proxy. Check that everything is running with docker compose ps.

Open the dashboard

Visit the domain you configured for the dashboard. For a local evaluation, use app.localhost. Create your account, then create an organization and a first project. Projects group the applications and databases that belong together, and each gets its own private network.

Deploy your first app

  1. In your project, open Applications and choose New application.
  2. Pick a source: a Git repository or an image from a container registry.
  3. Add any environment variables. They're encrypted at rest.
  4. Choose Deploy. InfraLedger builds the app, issues a certificate and starts it.
production / New application
SourceGit repositoryContainer image
Repositorygithub.com/acme/shop-api
Branchmain
Environment variables
DATABASE_URL••••••••••••EncryptedNODE_ENVproduction
Builds with the Dockerfile in the repositoryDeploy
Illustration of the new application form

Every deploy appears in the app's history with its build log, and in the organization's audit log.

Add a database

Open Databases, choose Add service and pick an engine: PostgreSQL, MySQL, MariaDB, Redis, object storage or RabbitMQ. Connection credentials can be shared with applications in the same project through project-level variables. Set a backup schedule from the service's settings.

production / Add service
PostgreSQLMySQLMariaDBRedisObject storageRabbitMQ
VersionPostgreSQL 16
BackupsDaily at 02:00, keep 14
Runs inside the project's private networkCreate
Illustration of the add service screen

Add a custom domain

Point a DNS record for your domain at the server, then add the domain in the application's settings. InfraLedger requests a certificate from Let's Encrypt and renews it automatically. You can also manage DNS zones for your own domains from the dashboard.

shop-api / DomainsAdd domain
DomainCertificateStatus
shop.example.comLet's Encrypt, auto-renewActive
api.example.comLet's Encrypt, auto-renewActive
new.example.comWaiting for DNSPending

Point an A record for new.example.com to 203.0.113.10. The certificate is issued as soon as DNS resolves.

Illustration of the domains screen

Move to Kubernetes

When one server isn't enough, InfraLedger can run the same applications and databases on a Kubernetes cluster through its Kubernetes provider. Developers keep the same dashboard and workflow. Our engineers guide this move with you.

Getting help

Email hello@etdledger.com or send us a request. ETDLedger engineers help with installation, onboarding and ongoing support.