OpenClaw
Your own open-source personal AI assistant.
OpenClaw, the open-source personal AI assistant, on Ubuntu 24.04 with HTTPS set up for you. Connect Anthropic, OpenAI, Google Gemini or OpenRouter with your own API key from a setup page in the browser.
Opens the Odinex console with OpenClaw selected. No licence fee: you pay for the server only.
- Base image
- Ubuntu 24.04 LTS
- Minimum
- 2 GB RAM · 20 GB disk
- Recommended plan
- S2 (2 vCPU · 4 GB RAM · 60 GB NVMe)
- Ready after boot
- 2 to 5 minutes (the gateway starts slowly on a small server)
- Image slug
openclaw
About OpenClaw
OpenClaw is an open-source personal AI assistant that you run yourself. Its gateway talks to the language model you choose and serves a web Control UI to work with the assistant. Self-hosting keeps the assistant and its configuration on a server you control, and you pay the model provider directly for what you use.
This image installs Node.js 24 and OpenClaw from npm, with Caddy in front for HTTPS. On first boot the gateway is bound to localhost with password authentication, and a small setup page at /setup lets you connect a model provider with your API key and approve your browsers. You never need SSH to get started.
What’s included
Software installed on the image and the ports it uses.
| Component | Version |
|---|---|
| Ubuntu | 24.04 LTS |
| OpenClaw (npm package openclaw) | Latest release at image build time |
| Node.js | 24 (NodeSource) |
| Caddy | 2 (automatic HTTPS) |
| Setup page | Small Python service at /setup |
| Port | Protocol | Used for |
|---|---|---|
| 22 | TCP | SSH |
| 80 | TCP | HTTP (redirects to HTTPS, certificate validation) |
| 443 | TCP + UDP | HTTPS: OpenClaw Control UI and the /setup page |
Who it’s for
- People who want a personal AI assistant on a server they control
- Developers who want to try OpenClaw without installing Node.js and a reverse proxy themselves
- Teams in the EU that want to choose their own model provider and keep the assistant's configuration on their own server
Use cases
A private assistant in your browser
Open the OpenClaw Control UI at your server's HTTPS address and sign in with the gateway password.
Your choice of model
Connect Anthropic (Claude), OpenAI (GPT), Google Gemini or OpenRouter with your own API key, and switch provider at any time on the setup page.
Room to build on
It is your server with root access: configure OpenClaw further with its own CLI and documentation.
Resources
OpenClaw needs at least 2 GB of RAM and a 20 GB disk. Every plan includes an NVMe disk and 20 TB of traffic.
Smallest plan
S1
- 1 vCPU (shared)
- 2 GB RAM
- 40 GB NVMe disk
The smallest plan that meets the minimum.
Recommended
S2
- 2 vCPU (shared)
- 4 GB RAM
- 60 GB NVMe disk
A comfortable size for regular use.
OpenClaw needs at least 2 GB of RAM. The model runs at your provider, not on the server, so S1 is enough to start; S2 starts the gateway faster and leaves headroom for anything else you set up on the server. You can resize the server later. See current prices.
Getting started after deploy
Wait for the first start
On first boot the server sets up the gateway, the setup page and HTTPS. Until the gateway is up the address may show a 502 page. The first-boot log is in
/var/log/nexoran-app.log.Find your address and password
The address, user name and password are written to
/root/APP-INFO.txtand printed when you log in over SSH as root. If you created the server with a root password and it meets the gateway's rules (any non-empty password), the app uses that same password, so you can sign in with what the console showed you at creation. If you used an SSH key (or the password does not meet the policy), a strong password is generated for this server and written to/root/APP-INFO.txt.ssh [email protected] cat /root/APP-INFO.txtConnect an AI model
Open
https://<your-host>/setup, enter the server password, choose a provider (Anthropic, OpenAI, Google Gemini or OpenRouter), paste its API key and press Save and connect. The page runs OpenClaw's onboarding, restarts the gateway and shows the connected model. Until you add your own domain, the app is served athttps://<your-ip-with-dashes>.sslip.io(for examplehttps://203-0-113-10.sslip.io), a public wildcard DNS name that resolves to your server, with a Let's Encrypt certificate obtained automatically. Opening the bare IP address redirects there.Open OpenClaw
Open
https://<your-host>, enter the password in the Gateway secret field and press Connect.Approve your browser
The first time a browser connects, OpenClaw shows "Approve this browser". Go back to
/setup, enter the server password under Approve a browser and press Approve waiting browsers; the OpenClaw page then connects by itself.Use your own domain
Create an A record for your domain that points to the server's IPv4 address and wait until it resolves. Then run the domain helper as root: it switches the app to the new name and obtains a new certificate. For OpenClaw it also updates the gateway's public origin in
/root/.openclaw/openclaw.jsonand restarts the gateway.nexoran-app-domain app.example.com
Security notes
- The gateway listens only on localhost (port 18789) and the setup page on localhost port 18790; Caddy is the only service reachable from the internet.
- The gateway uses password authentication. The password is stored in
/root/.openclaw/openclaw.json(readable by root only) and also protects the setup page, which refuses further attempts for 10 minutes after 10 wrong passwords. - A browser must be approved on the setup page the first time it connects, even with the right password.
- The setup page passes your API key to OpenClaw's onboarding and does not repeat it in error messages or logs. Usage on that key is billed by your provider, so set a spending limit there.
- OpenClaw runs as root on this server, so whatever the assistant is allowed to do, it does with root rights. Use the server for OpenClaw only.
- A server without a firewall accepts all inbound traffic. Create an Odinex firewall that allows only SSH (22), HTTP (80) and HTTPS (443) and apply it to the server. Odinex firewalls filter traffic before it reaches the server, so Docker's own iptables rules cannot bypass them.
- Take a snapshot before every upgrade, and turn on daily backups (20% of the server price) for anything you would not want to rebuild by hand.
OpenClaw questions
Clear answers about location, infrastructure and billing.
Which AI providers can I connect?
/setup, where you can also switch provider.Is AI usage included in the price?
Do I need SSH?
/setup page. SSH as root is still available if you want to change more.Where are the logs?
journalctl -u openclaw-gateway for the gateway and journalctl -u openclaw-setup for the setup page; systemctl status openclaw-gateway shows whether it is running. The first-boot log is /var/log/nexoran-app.log.How do I update OpenClaw?
npm install -g openclaw@latest and systemctl restart openclaw-gateway. Read OpenClaw's release notes before you upgrade.Can I set up messaging channels or skills?
openclaw CLI as described in OpenClaw's documentation. Keep the gateway settings in /root/.openclaw/openclaw.json (localhost, port 18789, password authentication) as they are: the HTTPS setup relies on them.Documentation
More from the marketplace
Deploy OpenClaw in Frankfurt
Your own server with full root access, NVMe storage and 20 TB of traffic, billed by the hour.



