Docs / Your server / Any Linux box
Any Linux box
MarkdownOpen in ClaudeOpen in ChatGPT
At the end, Loopgate's runner is running on your box and listed on your org's Devices page in the portal.
- Time
5 minutes.
- You need
- A Linux box with Docker, 2 GB of free memory and 5 GB of free disk, plus room for your code. x86 or Arm both run it. AWS, Google Cloud, Azure and A VPS make one.
- A Terminal on it
- Your Loopgate sign-in as an owner or admin of your org
Set this up with your agent
Copy this to a coding agent on your laptop. It runs the commands and checks each step with you; what you sign in to, press or paste stays yours.
This is for a coding agent that can run commands on my laptop (Claude Code, Codex, Cursor), not a chat website.
Walk me through Loopgate's docs page "Any Linux box": https://loopgate.dev/docs/any-box.md. The pages it links to are beside it, each ending in .md.
Run its commands yourself, on my laptop or on my box over SSH as the page says, one step at a time, and check each "You should see" line before the next step.
These are mine: tell me when it is my turn, wait for me, and never ask me to type them into this chat. Signing in to anything (the portal, a cloud console, Slack, GitHub), pressing Add a runner, every token and password, my AI subscription's device code, and making the Slack app.
If I paste you the portal's install line, run it on the box: its token works once, for an hour.Steps
Check that Docker Compose is there. With no Docker,
curl -fsSL https://get.docker.com | shinstalls it.docker compose versionYou should see:
Docker Compose version v2.followed by more numbers.On your laptop, open the portal's Devices page and press Add a runner, then Copy. The line holds a token that works once, for an hour. Press Add a runner again for a fresh one.
You should see: a line starting
curl -fsSL https://loopgate.dev/runner/install.shandExpires in 59 min · Waiting for the box….Paste the line on the box and press Enter.
You should see: the image download,
Waiting for the runner to start and register…, thenRunner connected. Open the portal's Devices page: …. The portal saysConnected · <the box's name>, and the runner's row shows an address endingtrycloudflare.commarkedtemporary.Read the runner's own lines. The install line made a
loopgatefolder in your home folder.cd ~/loopgate && docker compose logs runnerYou should see:
Registered as <name> with <your org>andRunner ready at https://….trycloudflare.com (temporary address).In the portal's Devices page, press Open on the runner's row.
You should see: the workbench, served by your box.
Good to know
- The runner gets its first address by itself, through a free Cloudflare quick tunnel. It changes when the box restarts. A permanent address with Cloudflare Tunnel or with Tailscale keeps it.
runner.envin theloopgatefolder holds the runner's settings, readable only by you.- By hand downloads the files, writes
runner.envand signs the runner in with a device code instead.
If something is off
- The script says
The runner did not register within two minutes.The lines under it are the runner's.The install token was refused: …says why, such as a token already used or expired, and retries each minute. Press Add a runner again and paste the new line. - Docker says permission denied. Your user cannot run Docker yet. The cloud page's last steps fix that.
- Anything else. Updates and backups says what each line means.