{"id":618,"date":"2026-03-21T22:52:57","date_gmt":"2026-03-21T14:52:57","guid":{"rendered":"https:\/\/pa.yingzhi8.cn\/index.php\/2026\/03\/21\/install-oracle\/"},"modified":"2026-03-21T23:23:48","modified_gmt":"2026-03-21T15:23:48","slug":"install-oracle","status":"publish","type":"post","link":"https:\/\/pa.yingzhi8.cn\/index.php\/2026\/03\/21\/install-oracle\/","title":{"rendered":"Oracle Cloud"},"content":{"rendered":"<h1>Oracle Cloud<\/h1>\n<p>Run a persistent OpenClaw Gateway on Oracle Cloud&#8217;s <strong>Always Free<\/strong> ARM tier (up to 4 OCPU, 24 GB RAM, 200 GB storage) at no cost.<\/p>\n<h2>Prerequisites<\/h2>\n<ul>\n<li>Oracle Cloud account (<a href=\"https:\/\/www.oracle.com\/cloud\/free\/\">signup<\/a>) &#8212; see <a href=\"https:\/\/gist.github.com\/rssnyder\/51e3cfedd730e7dd5f4a816143b25dbd\">community signup guide<\/a> if you hit issues<\/li>\n<li>Tailscale account (free at <a href=\"https:\/\/tailscale.com\">tailscale.com<\/a>)<\/li>\n<li>An SSH key pair<\/li>\n<li>About 30 minutes<\/li>\n<\/ul>\n<h2>&#23433;&#35013;&#37197;&#32622;<\/h2>\n<p>    1. Log into <a href=\"https:\/\/cloud.oracle.com\/\">Oracle Cloud Console<\/a>.<br \/>\n    2. Navigate to <strong>Compute &gt; Instances &gt; Create Instance<\/strong>.<br \/>\n    3. Configure:<br \/>\n       * <strong>Name:<\/strong> <code>openclaw<\/code><br \/>\n       * <strong>Image:<\/strong> Ubuntu 24.04 (aarch64)<br \/>\n       * <strong>Shape:<\/strong> <code>VM.Standard.A1.Flex<\/code> (Ampere ARM)<br \/>\n       * <strong>OCPUs:<\/strong> 2 (or up to 4)<br \/>\n       * <strong>Memory:<\/strong> 12 GB (or up to 24 GB)<br \/>\n       * <strong>Boot volume:<\/strong> 50 GB (up to 200 GB free)<br \/>\n       * <strong>SSH key:<\/strong> Add your public key<br \/>\n    4. Click <strong>Create<\/strong> and note the public IP address.<\/p>\n<pre><code>&lt;Tip&gt;\n  If instance creation fails with \"Out of capacity\", try a different availability domain or retry later. Free tier capacity is limited.\n&lt;\/Tip&gt;\n<\/code><\/pre>\n<\/p>\n<p>\n    &#8220;`bash  theme={&#8220;theme&#8221;:{&#8220;light&#8221;:&#8221;min-light&#8221;,&#8221;dark&#8221;:&#8221;min-dark&#8221;}}<br \/>\n    ssh ubuntu@YOUR_PUBLIC_IP<\/p>\n<pre><code>sudo apt update &amp;&amp; sudo apt upgrade -y\nsudo apt install -y build-essential\n```\n\n`build-essential` is required for ARM compilation of some dependencies.\n<\/code><\/pre>\n<\/p>\n<p>\n    <code>bash  theme={\"theme\":{\"light\":\"min-light\",\"dark\":\"min-dark\"}}<br \/>\n    sudo hostnamectl set-hostname openclaw<br \/>\n    sudo passwd ubuntu<br \/>\n    sudo loginctl enable-linger ubuntu<\/code><\/p>\n<pre><code>Enabling linger keeps user services running after logout.\n<\/code><\/pre>\n<\/p>\n<p>\n    <code>bash  theme={\"theme\":{\"light\":\"min-light\",\"dark\":\"min-dark\"}}<br \/>\n    curl -fsSL https:\/\/tailscale.com\/install.sh | sh<br \/>\n    sudo tailscale up --ssh --hostname=openclaw<\/code><\/p>\n<pre><code>From now on, connect via Tailscale: `ssh ubuntu@openclaw`.\n<\/code><\/pre>\n<\/p>\n<p>\n    <code>bash  theme={\"theme\":{\"light\":\"min-light\",\"dark\":\"min-dark\"}}<br \/>\n    curl -fsSL https:\/\/openclaw.ai\/install.sh | bash<br \/>\n    source ~\/.bashrc<\/code><\/p>\n<pre><code>When prompted \"How do you want to hatch your bot?\", select **Do this later**.\n<\/code><\/pre>\n<\/p>\n<p>\n    Use token auth with Tailscale Serve for secure remote access.<\/p>\n<pre><code>```bash  theme={\"theme\":{\"light\":\"min-light\",\"dark\":\"min-dark\"}}\nopenclaw config set gateway.bind loopback\nopenclaw config set gateway.auth.mode token\nopenclaw doctor --generate-gateway-token\nopenclaw config set gateway.tailscale.mode serve\nopenclaw config set gateway.trustedProxies '[\"127.0.0.1\"]'\n\nsystemctl --user restart openclaw-gateway\n```\n<\/code><\/pre>\n<\/p>\n<p>\n    Block all traffic except Tailscale at the network edge:<\/p>\n<pre><code>1. Go to **Networking &gt; Virtual Cloud Networks** in the OCI Console.\n2. Click your VCN, then **Security Lists &gt; Default Security List**.\n3. **Remove** all ingress rules except `0.0.0.0\/0 UDP 41641` (Tailscale).\n4. Keep default egress rules (allow all outbound).\n\nThis blocks SSH on port 22, HTTP, HTTPS, and everything else at the network edge. You can only connect via Tailscale from this point on.\n<\/code><\/pre>\n<\/p>\n<p>\n    <code>bash  theme={\"theme\":{\"light\":\"min-light\",\"dark\":\"min-dark\"}}<br \/>\n    openclaw --version<br \/>\n    systemctl --user status openclaw-gateway<br \/>\n    tailscale serve status<br \/>\n    curl http:\/\/localhost:18789<\/code><\/p>\n<pre><code>Access the Control UI from any device on your tailnet:\n\n```\nhttps:\/\/openclaw.&lt;tailnet-name&gt;.ts.net\/\n```\n\nReplace `&lt;tailnet-name&gt;` with your tailnet name (visible in `tailscale status`).\n<\/code><\/pre>\n<\/p>\n<h2>Fallback: SSH tunnel<\/h2>\n<p>If Tailscale Serve is not working, use an SSH tunnel from your local machine:<\/p>\n<p><code>bash  theme={\"theme\":{\"light\":\"min-light\",\"dark\":\"min-dark\"}}<br \/>\nssh -L 18789:127.0.0.1:18789 ubuntu@openclaw<\/code><\/p>\n<p>Then open <code>http:\/\/localhost:18789<\/code>.<\/p>\n<h2>&#25925;&#38556;&#25490;&#26597;<\/h2>\n<p><strong>Instance creation fails (&#8220;Out of capacity&#8221;)<\/strong> &#8212; Free tier ARM instances are popular. Try a different availability domain or retry during off-peak hours.<\/p>\n<p><strong>Tailscale will not connect<\/strong> &#8212; Run <code>sudo tailscale up --ssh --hostname=openclaw --reset<\/code> to re-authenticate.<\/p>\n<p><strong>Gateway will not start<\/strong> &#8212; Run <code>openclaw doctor --non-interactive<\/code> and check logs with <code>journalctl --user -u openclaw-gateway -n 50<\/code>.<\/p>\n<p><strong>ARM binary issues<\/strong> &#8212; Most npm packages work on ARM64. For native binaries, look for <code>linux-arm64<\/code> or <code>aarch64<\/code> releases. Verify architecture with <code>uname -m<\/code>.<\/p>\n<h2>&#19979;&#19968;&#27493;<\/h2>\n<ul>\n<li><a href=\"\/channels\">Channels<\/a> &#8212; connect Telegram, WhatsApp, Discord, and more<\/li>\n<li><a href=\"\/gateway\/configuration\">Gateway configuration<\/a> &#8212; all config options<\/li>\n<li><a href=\"\/install\/updating\">Updating<\/a> &#8212; keep OpenClaw up to date<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Oracle Cloud Run a persistent OpenClaw Gateway on Oracl [&hellip;]<\/p>\n","protected":false},"author":0,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-618","post","type-post","status-publish","format-standard","hentry","category-docs"],"_links":{"self":[{"href":"https:\/\/pa.yingzhi8.cn\/index.php\/wp-json\/wp\/v2\/posts\/618","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pa.yingzhi8.cn\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pa.yingzhi8.cn\/index.php\/wp-json\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/pa.yingzhi8.cn\/index.php\/wp-json\/wp\/v2\/comments?post=618"}],"version-history":[{"count":3,"href":"https:\/\/pa.yingzhi8.cn\/index.php\/wp-json\/wp\/v2\/posts\/618\/revisions"}],"predecessor-version":[{"id":772,"href":"https:\/\/pa.yingzhi8.cn\/index.php\/wp-json\/wp\/v2\/posts\/618\/revisions\/772"}],"wp:attachment":[{"href":"https:\/\/pa.yingzhi8.cn\/index.php\/wp-json\/wp\/v2\/media?parent=618"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pa.yingzhi8.cn\/index.php\/wp-json\/wp\/v2\/categories?post=618"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pa.yingzhi8.cn\/index.php\/wp-json\/wp\/v2\/tags?post=618"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}