Run T3 Code with Podman
run.sh serves T3 Code on http://127.0.0.1:3773 under
rootless Podman, with the current directory mounted at /workspace.
- Images
- GHCR
ghcr.io/hambn/t3code - Docker Hub
docker.io/hambn/t3code
- GHCR
- Use case
- Rootless local instance
Prerequisites
- Rootless Podman 4.3 or later, for
--userns=keep-id:uid=1000,gid=1000.
Run T3 Code
Shell
./run.shWhen the server prints its Token: line, open
http://127.0.0.1:3773/pair#token=<token> to pair your browser. Add /workspace as a
project and sign in to an agent from the UI. The token expires after five minutes; run
podman exec <container> t3 auth pairing create --base-url http://127.0.0.1:3773 for
a new pair URL. The container and its state are removed when you stop it.
Variables
| Variable | Required | Purpose |
|---|---|---|
T3CODE_IMAGE |
no | Image to run. Defaults to ghcr.io/hambn/t3code:ubuntu-browser; set a digest reference to pin one build. |
Workspace
The current directory is mounted at /workspace with :Z, so SELinux hosts relabel it
for the container. --userns=keep-id maps your host user to sysadmin (UID 1000), so
files the agents write stay owned by you. The port is bound to 127.0.0.1.
Files
run.shruns the published image with rootless Podman.
File contents
run.sh9 lines
#!/usr/bin/env bash
# Run the T3 Code web GUI on http://127.0.0.1:3773 rootlessly against the current directory; :Z relabels it on SELinux hosts.
set -euo pipefail
image=${T3CODE_IMAGE:-ghcr.io/hambn/t3code:ubuntu-browser}
podman run -it --rm --userns=keep-id:uid=1000,gid=1000 \
-p 127.0.0.1:3773:3773 \
-v "$PWD:/workspace:Z" \
"$image" "$@"