← Back to all guides

Any Linux computer with Docker

MarkdownOpen in ClaudeOpen in ChatGPT

At the end, Loopgate's runner is running on your box and on your org's Devices page.

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 guide "Any Linux computer with Docker": https://loopgate.dev/runner/guides/any-box.md. The guides 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 guide 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.

At a glance

Time: 5 minutes.

What you need:

  • A Linux box with Docker, 2 GB of free memory and 5 GB of free disk, plus room for your code. If the cloud asks x86 or Arm, pick x86; every cloud guide here does
  • A Terminal on it (a cloud guide gives you both)
  • Your Loopgate sign-in as an owner or admin of your org

Steps:

  1. Check Docker
  2. Get the command from the portal
  3. Paste it on the box

Steps

  1. Check that Docker Compose is there.

    docker compose version

    You should see: Docker Compose version v2. followed by more numbers. With no Docker, curl -fsSL https://get.docker.com | sh installs it.

  2. On your laptop, open the portal's Devices page and press Add a runner, then Copy.

    You should see: a line starting curl -fsSL https://loopgate.dev/runner/install.sh, Expires in 59 min and Waiting for the box….

    The line holds a token that works once, for an hour. Press Add a runner again for a fresh one.

  3. Paste the line on the box and press Enter.

    You should see: the image download (about 170 MB the first time), Waiting for the runner to start and register…, then Runner connected. Open the portal's Devices page: …. The portal says Connected · <the box's name>, with an address ending trycloudflare.com marked temporary.

    The runner gets that address by itself, through a free Cloudflare quick tunnel. It changes when the box restarts; a permanent address keeps it. The line made a loopgate folder in your home folder, readable only by you.

Check

The runner says it is registered:

cd ~/loopgate && docker compose logs runner

You should see: a line Registered as <name> with <your org> and a line Runner ready at https://….trycloudflare.com (temporary address).

Next

Press Open on the runner's row in the portal's Devices page, then sign in to your engines, set GitHub and add a workspace.

If something is off

  • The script says the token was already used, or expired. Press Add a runner again and paste the new line.
  • 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 and retries each minute; paste a fresh line from the portal.
  • Docker says permission denied. Your user cannot run Docker yet; the cloud guide's last steps fix that.
  • Anything else. Update, back up, fix says what each line means.

Doing it by hand

By hand downloads the files, writes runner.env and signs the runner in with a device code.