Skip to content

Addis Ababa, Ethiopia. Support on 6993.MCP ready. Attach your agents 100% self-service. Sign up using google or phone number. No sales call to get started

System status

First in Ethiopia

Deploy apps,straight from GitHub

Connect a repository and AletCloud builds it, runs it and serves it over TLS on a hostname of its own. Point a custom domain at it when you are ready and the certificate follows.

Fifteen stacks detected on their own, or a Dockerfile of your own.

From repository to running app.

The repository is the only thing entered. Detection, the image, the certificate and the routing are AletCloud's, and all of it runs in Addis.

01

Connect the repository

Authorise GitHub once and every repository on the account is listed, private ones included. Pick one and the branch to deploy from.

GitHub connectedAll owners (48)
shop-websami/shop-webTypeScript
shop-apisami/shop-apiJavaScript
shop-sitesami/shop-siteHTML

02

Detection fills the build in

The repository is read for its framework, its build command and the directory to publish. Every field is editable, and a Dockerfile in the repository replaces the lot.

Detected from the repository
Framework
Vite
Runtime
Static, served by nginx
Build
npm ci && npm run build
Output
dist/
Branch
main
Database
shop-db, PostgreSQL 16
Bucket
t01-shop-media

03

The build runs on the cluster

The image is built and pushed to the registry in the same data centre it will run in. The log streams while it happens and is kept with the deploy afterwards.

BuildRuntimeshop-web
  • > waiting for the push

Queued

04

It answers on its own hostname

Traffic moves the moment the new version answers, over TLS, with the version before it serving until then. Every push to the branch runs the same four steps again.

3f714ceCache the product grid2 min agoLive
a91c02dMove to node 22YesterdayReplaced
7d3e5b1Initial import3 days agoReplaced

What the pipeline handles.

What is left for you is the repository and which plan it runs on.

Detection before the build

The framework, the build command and the directory to publish, read off the repository.

vitenpm ci && npm run builddist/

Your Dockerfile wins

Commit one and the pipeline builds with it instead of a generated file.

./Dockerfile

Upload instead of connecting

No GitHub account needed. Send output that is already built and it is served the same way.

.zip.tar.gz

Push, and it redeploys

The running version keeps answering until the new one is ready.

git push origin main

Two log streams

What the builder printed, and what the process has printed since it started.

BuildRuntimesearchdownload

Every deploy is kept

Each build with its commit, when it ran and how it ended.

3f714ce2 min agoLive

Resize without a redeploy

A new plan applies immediately. Same app, same hostname, same environment.

500m → 1000m2 → 5 replicas

Linked, not configured

Attach a database or a bucket and its credentials arrive as environment variables.

DATABASE_URLAWS_ACCESS_KEY_ID

Workers, not only web apps

Queue consumers, schedulers and bots run with no port and no public URL.

workerno routesame logs

Work from your AI IDEDeploy, resize and manage apps from Claude Code, Cursor or Codex over MCP.Agents over MCP

A name, a certificate, and a project around it.

A deployed app answers on a hostname under app.aletcloud.com, over TLS, with a certificate issued for it and renewed without anyone asking. Changing that name is one dialog, and the certificate follows the new one.

A domain registered on AletCloud
Pick it from the account and the records are written for you.
A subdomain of one you already hold
app.example.et on one app, api.example.et on the next.
A domain bought anywhere else
Point one record at the app. The certificate is issued once the record resolves.
The hostname it deployed on
app.aletcloud.com stays reachable whatever else is pointed at the app.

Apps are grouped into projects, and a project holds a domain of its own. The apps under it are routed by path, so a front end on the root and an API on /api answer on one hostname and share one certificate.

Pricing

Top up through chapa.

Solo

Personal apps and side projects

Freeno expiry

CPU
250m
Memory
256Mi
Apps
1
Replicas
1
Build
100 min
Disk
None
Hourly rate
Free
Start free

Pro

Production workloads

360ETB a month

CPU
500m
Memory
512Mi
Apps
10
Replicas
2
Build
300 min
Disk
1 GB
Hourly rate
0.5 ETB/hr
Deploy an app

Ultra

Applications under real load

1,440ETB a month

CPU
1000m
Memory
1Gi
Apps
25
Replicas
5
Build
1000 min
Disk
5 GB
Hourly rate
2 ETB/hr
Deploy an app

Max

An estate of services

3,600ETB a month

CPU
2000m
Memory
2Gi
Apps
100
Replicas
10
Build
3000 min
Disk
20 GB
Hourly rate
5 ETB/hr
Deploy an app
The monthly figure is a cap, not a bill
Underneath it AletCloud counts hourly. A Pro app is 0.5 ETB an hour, so a front end and an API both on Pro come to 720 ETB in a full month.
Solo is free and does not expire
One free app per account, for life, on one replica and the same pipeline the paid plans use. What it does not carry is persistent disk.
Build minutes are counted per month
Only the build spends them. A static site takes about a minute, and a build that finds nothing changed takes less.
Databases and buckets are billed on their own
A bucket can be linked to an app on any plan, Solo included. What it costs is storage, not hosting.

Questions people ask

Short answers to the ones that come up most. For anything else, call 6993 and a person answers.

Ask us something else
Which stacks are supported?

Fifteen stacks are detected from the repository and built with no configuration. Commit a Dockerfile and the pipeline builds with that instead. Output that is already built can be uploaded as a zip or a tarball, with no GitHub account.

Is there a free plan?

Yes. Every account gets one Solo app free, for life, on the same pipeline the paid plans use. It runs on one replica and carries no persistent disk.

Can I use my own domain?

Yes. Every app answers on a hostname under app.aletcloud.com, over TLS, from the first deploy. Point a domain of your own at it and a certificate is issued once the record resolves.

Start building locally.

13 ETB buys you an afternoon. Signup is a phone number and one SMS.

If it does not work the way this page says it does, call 6993 and say so.