ozpanel sovereign hosting
Get ozpanel

User guide · Your hosting account

Apps

Run a container or a program. Deploy a recipe. Logs, ports, nodes, image, shell.

Your apps

Containers you run on your account, and the sites in front of them.

Apps. Name, address, where it runs. — ozpanel screenshot
Apps. Name, address, where it runs.
Box / buttonWhat it does
AppThe app's name.
AddressThe site in front of it. Click to open.
RunningWhere it runs, e.g. running on node-b, node-c. Amber when not healthy.
ManageOpens the app panel below the row. See Managing an app.
Deploy a recipeA ready-made app. See Deploy a recipe.
Run an appYour own image or program. See Run an app.

Run an app

Run an app. Name, what you run, recipe, image, port. — ozpanel screenshot
Run an app. Name, what you run, recipe, image, port.
Box / buttonWhat it does
NameShort, e.g. shop. Your own code lives in apps/<name>.
What are you running?A container image (e.g. nginx:alpine) or A program on a port (Node, Python, a binary), run as your account.
Start from a recipe (optional)Container only. Fills the form: WAHA — WhatsApp HTTP API, Redis — in-memory datastore, whoami — a tiny test server. Default Custom — fill it in yourself.
ImageContainer. e.g. redis:alpine. Required.
Command to runProgram. e.g. node server.js. Required.
The port it listens on insideContainer. Its internal port, e.g. 80. Required.
The port your program listens onProgram. e.g. 3000.
Address to serve it at (optional)A name for it, e.g. shop.example.com. Added as a domain; HTTPS automatic.
Command (optional)Container. Overrides the image's own.
Files (working directory, optional)Program. Defaults to your home.
Memory capContainer. MB. Empty = plan default.
Image typePublished image (runs its own code) or My own code (mounted at /app): your apps/<name> folder.
Folders to keepAdd a folder: Folder in your account → Path in the container, optional read-only. Kept across restarts and node moves. None: data elsewhere is lost on restart.
Let this image write to its own filesystemOff by default. Turn on only if the image fails read-only (nginx, Apache, Postgres).
Settings passed to itOne KEY=value per line.
Where it runsAll nodes (a copy on each) · One instance — moves to another node if one fails · Only node-x (pinned, does not move). Default: this node.
Start itCreates and starts. Missing image, command or port: refused with the reason.

Deploy a recipe

Deploy an app from a recipe. App, name, variant, address, settings. — ozpanel screenshot
Deploy an app from a recipe. App, name, variant, address, settings.
Box / buttonWhat it does
AppChoose from the catalogue. (unverified) marks untested recipes.
NameDefaults to the recipe's key.
VariantWhen the recipe has several.
Address (hostname)When it serves the web, e.g. pbx.example.com. HTTPS by the platform. Registered for you.
Recipe settingsOne box per setting. (optional) where not required. Strong passwords generated for you.
Needs a databaseSome variants. Create it under Databases first.
It asks to open these portsExtra ports it needs. An admin approves them before they go live.
Deploy itStarts it. One instance, moves to another node if one fails.

Managing an app

Manage on a row. Buttons on top, then details.

Managing an app. Buttons, runs on, configuration, site, ports, logs. — ozpanel screenshot
Managing an app. Buttons, runs on, configuration, site, ports, logs.
Box / buttonWhat it does
TerminalA shell inside the container, in a new tab. Containers only, while running.
Start · RestartStart when stopped; restart when running.
StopStops now on its node. Comes back on the next check while enabled.
Turn off · Turn onOff: stopped everywhere, stays stopped. Nothing deleted.
Repoint routingPoints the site at the container's current address. Use it when a warning says the site is not pointing at this container.
EditChange image, port, command, memory, folders, settings. Save changes.
DeleteRemoves the app on every node. Your files stay.
Runs onOne instance — moves if a node fails or A copy on each selected node. Tick nodes. Apply — move it. Route and DNS follow.
CPU · Memory · RestartsLive figures, with the node measured.
ConfigurationImage, command, port, files, service, setting names.
Where it runsPer node: running, failed, stray, uptime. Run here moves a one-instance app to that node.
The site in front of itAddress, certificate, DNS. Links: Site settings and certificate, Restrict access with a password.

Image version

In Edit, containers only.

Box / buttonWhat it does
Pinned versionThe exact version every node runs. Pinned at first start.
Check for updatesAsks the registry. Nothing changes.
Update to …Moves every node to the new version.
Update this app automatically when its image tag gets a new versionOff by default. On: checked about hourly; the app restarts on every node.

Ports & networking

Box / buttonWhat it does
Request a portFor non-web traffic: SIP, a game server, a raw TCP service.
ProtocolTCP or UDP.
Public port (what people connect to)e.g. 5060. …up to for a range.
Port inside your containere.g. 5060. …up to for a range.
How it should be servedA suggestion: HTTP website, TLS by hostname (SNI), Raw TCP/UDP via the proxy, Direct NAT (raw). The admin decides.
HostnameFor HTTP or SNI, e.g. sip.example.com.
Why you need itHelps the admin decide.
RequestNothing opens until an admin approves. Status: requested, approved, denied.
Revoke · RemoveClose an open port, or drop a pending request.

Activity and logs

Box / buttonWhat it does
ActivityEvents: started, stopped, failed, moved. Mark as seen on warnings.
LogsThe app's output, from the node running it. 50, 200 or 1000 lines. Refresh.

Previous: Site settings Next: Mail

For operators and integrators

Installing, running a cluster, the API and its routes: the Operator & API reference.