Sign inSign up

simpleorch/control-plane

By simpleorch

•Updated 3 months ago

The SimpleOrch Control Plan

Image
API management
Web servers
Monitoring & observability
0

131

simpleorch/control-plane repository overview

⁠SimpleOrch Control Plane

On-premises container orchestration for Windows and Linux Docker Swarm environments — without the Kubernetes complexity.

SimpleOrch is a container orchestration platform purpose-built for organizations running Windows Server workloads on existing on-premises infrastructure. The control plane is the central management server that registers Docker Swarm clusters, manages deployments, enforces scaling policies, monitors service health, and provides a web-based dashboard for your entire container environment.


⁠What SimpleOrch Does

  • Multi-cluster management — manage multiple Docker Swarm clusters from a single control plane
  • Automated deployments — push a new image to your container registry and SimpleOrch rolls it out automatically via webhook
  • Auto-scaling — scale services up and down based on CPU and memory metrics with configurable thresholds and cooldown periods
  • Service health monitoring — HTTP health checks with configurable failure thresholds and optional auto-restart
  • SSL/TLS termination — integrated nginx ingress management with certificate upload, self-signed generation, and expiry monitoring
  • Role-based access control — per-cluster user permissions so team members have the right access to the right environments
  • Offline license validation — cryptographically signed JWT licenses validated locally with no phone-home requirement

⁠Architecture

The control plane runs as a Docker Compose stack on a dedicated Linux server. It does not run inside the Swarm cluster it manages — this intentional separation means your management plane stays up even when clusters are being maintained.

simpleorch/control-plane   ← This image. Flask web app + API.
simpleorch/agent           ← Deployed separately on each Swarm node.

Agents communicate with the control plane over WebSockets (with automatic polling fallback). Worker node agents are deployed automatically as a Docker Swarm global service once the first manager node registers — you only need to manually install the agent on your Swarm manager nodes.


⁠Quick Start

⁠1. Prerequisites
  • A dedicated Linux server (VM or bare metal) with Docker installed
  • Network access between this server and your Docker Swarm nodes
  • A SimpleOrch account and license at simpleorch.io⁠
⁠2. Deploy in One Command

Visit simpleorch.io⁠ to get your personalized setup command. It looks like this:

curl -sSL https://simpleorch.io/install | bash

This single command downloads your pre-configured docker-compose.yml (with your license token already included) and starts the control plane automatically. The control plane:

  • Generates a self-signed TLS certificate on first startup (stored in a Docker volume — persists across restarts)
  • Initializes the database and runs any pending schema migrations automatically
  • Starts serving HTTPS on port 443
⁠3. First Login

Navigate to https://<your-server-ip> in a browser. Accept the self-signed certificate warning (or replace with your own certificate in Settings).

Default credentials:

  • Username: admin
  • Password: simplify!

You will be required to change the password immediately on first login.

⁠4. Activate Your License

After logging in you will be prompted to activate a license before accessing the dashboard. Licenses are free to generate — no credit card required for the Community tier.

  1. Visit licensing.simpleorch.io⁠ and create a free account
  2. Generate a license (Community tier is free and supports up to 4 worker nodes)
  3. Copy your installation UUID from the SimpleOrch dashboard prompt
  4. Register the UUID in the licensing portal and download your license token
  5. Paste the token into the SimpleOrch activation screen

The license is validated completely offline — no internet connection is required after the token is downloaded. The token is cryptographically signed and stored locally.


⁠5. Add a Cluster

From the dashboard, create a cluster and run the generated join command on your Docker Swarm manager nodes. Worker nodes are configured automatically.


⁠Configuration

All configuration is handled through environment variables in your docker-compose.yml.

VariableDefaultDescription
SECRET_KEYAuto-generatedFlask secret key. Set explicitly for production.
SCALING_COOLDOWN_SECONDS180Minimum seconds between auto-scale events per service
SCALING_EVALUATION_INTERVAL30How often scaling policies are evaluated (seconds)
AUDIT_LOG_RETENTION_DAYS90How long audit log entries are retained
WEBSOCKET_PING_TIMEOUT60WebSocket ping timeout (seconds)
WEBSOCKET_PING_INTERVAL25WebSocket ping interval (seconds)
AGENT_TOKEN_EXPIRY_HOURS24How long agent WebSocket tokens remain valid

⁠Volumes

The control plane uses two named Docker volumes that must persist across container restarts:

VolumeContents
simpleorch-dataSQLite database, license state, initialization flags
simpleorch-certsTLS certificate and private key

Never delete these volumes while the control plane is running. Back them up regularly.


⁠Upgrading

Pull the latest image and restart:

docker compose pull
docker compose up -d

Database schema migrations run automatically on startup. Upgrading across multiple versions (e.g. v1 to v3) is fully supported — all pending migrations are applied in sequence.


⁠Licensing

SimpleOrch uses a node-based licensing model:

TierPriceNodesSupport
CommunityFreeUp to 4 worker nodesCommunity only
Starter$960/yearUp to 4 worker nodesEmail & ticket
Pro$480/node/yearUnlimited worker nodesPriority support

Manager-only nodes never count toward the license limit. A combined manager+worker node counts as one licensed node. Licenses are validated offline — no internet access required after initial token download.

Register and manage licenses at simpleorch.io⁠.


⁠Ports

PortProtocolDescription
443HTTPSWeb dashboard and agent API

The control plane does not require any inbound ports on your Swarm nodes — agents connect outbound to the control plane.


⁠Source & Support

SimpleOrch is a product of MW Consulting.

Tag summary

Content type

Image

Digest

sha256:a349c98b9…

Size

69.6 MB

Last updated

3 months ago

docker pull simpleorch/control-plane