Skip to content

Pre-alphaZekno is in active development

Deploy to your own infrastructure. Keep every key.

Zekno gives small teams push-button deploys, roles and deploy history on their own servers. Secrets are encrypted and deploys are signed on your machine, so our service never holds a key.

Get early access (Not available yet)View on GitHub (opens in a new tab)

Open source (MIT). Starting with Hetzner and Docker Compose.

Your machine
DATABASE_URLpostgres://demo@db/app
PAYMENTS_KEYdemo-key-not-a-secret
SESSION_SECRETexample-session-value
Team signing keystays here
ciphertext + signed manifest
Zekno control planeBreached
Nothing stored yet
9f3ac41e07bde2a95c108d9f3ac41eb3e41a6cf02d77a14be9db3e41a6c05c31f8a2c76e0b94d3aa05c31f8a

Stored sealed. No key to open it.Everything the attacker can read

agent pulls, outbound only
Your server
containeridlerunning
containeridlerunning
containeridlerunning
Sealed packetSigned
9f3ac41e07bde2a95c108db3e41a6cf02d77a14be9d05c31f8a2c76e0b94d3aa

Agent waitingSignature verifiedRefused: no team signature

  1. Encrypt
  2. Sign
  3. Relay
  4. Verify
  5. Run

Your server decrypts with its own key and runs your containers.

In October 2026, Zeabur, Railway and Northflank each had customer secrets read out of their control planes. All within 17 days.

Same flaw every time: the platform could decrypt every customer's secrets, so one break-in reached everyone.

Zekno can't decrypt yours. A breach of our service finds nothing it can open.

How it works

Keys live at the two ends

The service in the middle holds nothing it can open.

Step 1 of 5

The desktop app encrypts each secret for your server's public key before anything leaves your machine.

A breach of Zekno leaks nothing

Your secrets are encrypted before they leave your machine, so our database holds only ciphertext. Copy all of it and there is still nothing to open.

Nobody deploys to your servers but you

Every deploy is signed on your machine. The agent on your server refuses anything unsigned, including anything we send.

We go down, you stay up

Your servers never depend on Zekno at runtime. If we are offline, the desktop app deploys to the agent directly.

A real team platform, on servers you rent yourself

A desktop app, teammates with roles and a full deploy history. You pay your provider directly for the servers.

It all runs on your servers. You pay your provider directly.

What a breach gets an attacker

We publish what the design protects against, and what it does not. Pick a scenario.

  • What the attacker controls

    Outcome

    No secrets exposed.

    The database holds only ciphertext.

The control plane still sees metadata: server addresses, app names, deploy times and team membership.

Zekno next to what you use today

The convenience of a managed platform, with the control of your own scripts.

QuestionZeknoManaged platforms, e.g. RailwaysourceKamal or your own scriptssource
Who can decrypt your secretsYour team and your serversThe platformWhoever holds the files
Who can run code on your serversOnly deploys your team signedThe platformAnyone with SSH access
If the vendor is breachedNo secrets, no code executionWhatever the platform can decryptNo vendor
If the vendor is downApps keep runningDepends on the platformNo vendor
Team roles and deploy historyIncludedIncludedYou build it
Runs on servers you ownYesUsually notYes

Don't trust us. Read the code.

Everything that runs on your device or in your browser is public under the MIT license. The control plane is closed, and it never holds a key, so you don't have to trust it.

View on GitHub (opens in a new tab)
  • Core libraryOpen
  • Server agentOpen
  • Desktop appOpen
  • Website and dashboardOpen
  • Control plane (hosted by Zekno)Closed

Questions

Short answers. The README has the full security model.

No. The mechanism is end-to-end encryption plus digital signatures. The name refers to the service having zero knowledge of your secrets.

Deploy without handing over the keys

Zekno is pre-alpha. Early-access teams get a hands-on migration from Railway, Zeabur or Northflank.

Get early access (Not available yet)View on GitHub (opens in a new tab)