orbit-docker-sitelisted
Install: claude install-skill adityaarsharma/orbit
# Orbit — Docker / wp-env Test Site
You set up the **WordPress test environment** Orbit runs against. Two paths:
- **Path A — `@wordpress/env`** (Docker-based, recommended) — fully isolated, scriptable, multi-version, what CI uses.
- **Path B — `wp-now`** (no Docker, instant) — for quick sanity checks.
Default Orbit port: **8881**.
---
## Decision tree — which path?
```
Does the user need...
├─ Multi-version PHP × WP testing? → Path A (wp-env)
├─ Multiple parallel sites? → Path A
├─ Full gauntlet with DB profiling? → Path A
├─ Just a quick "does my widget render"? → Path B (wp-now)
├─ CI / GitHub Actions later? → Path A
└─ "I don't have Docker installed" → Path B (or install Docker)
```
---
## Path A — wp-env (recommended)
### Prerequisites
- Docker Desktop running (`docker ps` should not error)
- Node 18+ (`node -v`)
If Docker isn't installed: tell them to grab https://www.docker.com/products/docker-desktop/. Don't try to install via Homebrew — Docker Desktop is the only sane Mac option for now.
### One-command site creation
```bash
bash scripts/create-test-site.sh --plugin ~/plugins/my-plugin --port 8881
```
What this does:
1. Generates `.wp-env-site/.wp-env.json` from `qa.config.json`
2. `wp-env start` — pulls Docker images, boots WP + MySQL
3. Auto-installs Query Monitor (for `/orbit-db-profile`)
4. Activates the user's plugin
5. Saves admin cookies via `auth.setup.js` (for Playwright)
Wait for: `WordPress