Docs · CLI
Worktrees.
Run three branches side-by-side on one workstation with no port collisions. Each worktree gets an isolated docker compose project, its own portless alias, and its own live URL.
Spin up a worktree
$ remoco worktree hero-redesign # 1. git worktree at ~/code/doss-wt/hero-redesign # 2. yarn/pnpm install # 3. writes docker-compose.override.yml (no ports, container names prefixed) # 4. docker compose -p doss-hero-redesign up -d # 5. discovers container IPs, writes .env.worktree # 6. portless alias web.hero-redesign.wiley → app port # 7. prints: https://web.hero-redesign.wiley.remoco.dev
List + inspect
$ remoco worktrees branch stack port URL main doss-main 3000 https://web.main.wiley.remoco.dev hero-redesign doss-hr 3001 https://web.hero-redesign.wiley.remoco.dev pr-42 doss-pr42 3002 https://web.pr-42.wiley.remoco.dev
Tear down
$ remoco worktree --teardown hero-redesign # docker compose down · git worktree remove · drop aliases · hide URLs
Resource math
A 15-service product compose × 3 worktrees ≈ 45 containers. Recommended classes:
- large (16 vCPU · 64 GB) — mixed workloads, many node processes
- highmem (8 vCPU · 64 GB) — heavy Postgres/ES/Clickhouse stacks
Inter-service traffic goes through the docker network; host ports are never published. This is what makes three copies of your compose stack coexist.