DeployAlly

Automated deployment platform for containerized applications. Describe what you want to run in a declarative file, run one command, and get healthy containers in production — with TLS, healthchecks, dependencies resolved, and secrets generated.

Overview

Aspect Detail
Type SaaS + CLI Tool
Languages Rust (CLI), Python (Backend), React (Frontend)
Status Production
Published templates 11 (memos, uptime-kuma, vaultwarden, mariadb, mysql, postgresql, redis, n8n, wordpress, postal, traefik)
Archetypes 6 (application, asset, static, worker, multi_component_saas, network_appliance)

What DeployAlly is

DeployAlly solves three problems at the same time:

  • Curated template catalog: every service (database, app, proxy) is declared in a versioned, tested, and published template.
  • Declarative deploy: the CLI reads the template, runs an input wizard, generates secrets, resolves dependencies (database, cache), and brings up the containers.
  • Asset auto-provision: if your app needs MySQL and none is running, DeployAlly brings one up automatically — no manual orchestration required.

How It Works

┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│   Template  │ ──▶ │   Wizard    │ ──▶ │   Deploy    │
│   (YAML)    │     │  (inputs +  │     │ (containers │
│             │     │  secrets)   │     │  + Traefik) │
└─────────────┘     └─────────────┘     └──────┬──────┘
                                               │
                                        ┌──────▼──────┐
                                        │ Auto-prov.  │
                                        │ of assets   │
                                        └─────────────┘
  1. Template: declares image, inputs, secrets, HTTP routes, healthcheck, storage, and dependencies (needs).
  2. Wizard: only asks what's missing (domain, admin email, etc.) and generates the rest (hex passwords, UUID tokens).
  3. Deploy: applies archetype defaults, resolves Reflang references (${input.X}, ${secrets.X}, ${needs.X}), brings up containers, registers Traefik labels, and waits for healthy state.
  4. Auto-provision: if the app declares needs: [{ class: mysql, ... }] and no MySQL is running, the deployer brings one up automatically with --provision-missing-assets.

Available Templates

Applications

Template Description
memos Personal notes with sync
uptime-kuma Uptime monitoring
vaultwarden Self-hosted Bitwarden server
n8n Workflow automation
wordpress CMS for sites and blogs
postal Full SMTP server (multi-component)

Assets

Template Description
mariadb MariaDB relational database
mysql MySQL relational database
postgresql PostgreSQL relational database
redis Cache and message broker

Network

Template Description
traefik Ingress / reverse proxy with automatic TLS

Architecture

┌─────────────────────────────────────────────────────────┐
│                       User                              │
└─────────────────────┬───────────────────────────────────┘
                      │
        ┌─────────────┴─────────────┐
        ▼                           ▼
┌───────────────┐           ┌───────────────┐
│   Dashboard   │           │   CLI         │
│   (React)     │           │   (Rust)      │
└───────┬───────┘           └───────┬───────┘
        │                           │
        └───────────┬───────────────┘
                    ▼
            ┌───────────────┐
            │   API (Flask) │
            │   + MySQL     │
            └───────┬───────┘
                    │
        ┌───────────┴───────────┐
        ▼                       ▼
┌───────────────┐       ┌───────────────┐
│   Server 1    │       │   Server N    │
│   + Docker    │       │   + Docker    │
└───────────────┘       └───────────────┘

Components

Component Description
CLI Rust binary (static musl, x86_64 + aarch64). Input wizard, local deploy, auto-update.
API Backend Flask + MySQL. Template catalog, manifests, multi-tenant.
Dashboard React. Catalog browsing, install library.

Quick Start

# 1. Install the CLI
curl -fsSL https://get.deployally.com/init.sh | sudo bash

# 2. Deploy an app with full automation
deployally deploy --species memos \
  --instance-uid memos-001 \
  --input WEB_HOSTNAME=memos.example.com \
  --apply

Done. The container is available at https://memos.example.com with automatic TLS.

System Requirements

Target Server

  • Linux (Ubuntu 20.04+, Debian 11+, RHEL 8+)
  • Docker 20.10+
  • Traefik running (or deploy the traefik template first)
  • 1 GB RAM minimum

Local CLI

  • Linux x86_64 or aarch64 (static binary, zero dependencies)

Next Steps

  1. Installation and First Deploy — install the CLI and bring up memos in 5 minutes
  2. Reflang Reference — full template language syntax
  3. CLI Reference — all commands
  4. API Integration — programmatic use (restricted)
By Borlot.com.br on 05/06/2026