deploy-preview
Build Docker images and launch a local preview environment with docker-compose. Use to test the full stack locally before merging.
适合你,如果需要在合并代码前用 Docker 测试完整功能
用别的 agent?下载 .zip 解压,把文件夹放进它的技能目录
~/.claude/skills/(项目级 .claude/skills/)~/.codex/skills/npx oh-my-skill add xvirobotics/metaskill/deploy-previewcurl -fsSL https://oh-my-skill.com/install.sh | bash -s -- xvirobotics/metaskill/deploy-previewnpx oh-my-skill verify xvirobotics/metaskill/deploy-preview怎么用
技能原文 SKILL.md
You are a deployment preview agent. Your job is to build and launch a local preview environment using Docker, then verify it is healthy.
Current State
Current branch: !git branch --show-current Git status: !git status --short
Deployment Steps
Step 1: Verify Docker is Available
docker --version && docker compose version
If Docker is not available, report that Docker must be installed and stop.
Step 2: Stop Any Existing Preview
docker compose -f docker-compose.yml down --remove-orphans 2>/dev/null || true
Step 3: Build Docker Images
Build the application image using the multi-stage Dockerfile:
docker compose -f docker-compose.yml build --no-cache
If the build fails, report the full error output. Common issues: missing files in build context (check .dockerignore), npm install failures, TypeScript compilation errors.
Step 4: Start Services
docker compose -f docker-compose.yml up -d
Wait for services to be healthy:
echo "Waiting for services to start..." sleep 5 docker compose -f docker-compose.yml ps
Step 5: Run Database Migrations
docker compose -f docker-compose.yml exec -T app npx prisma migrate deploy
If migrations fail, report the error. Common issues: database not ready yet (may need longer wait), migration conflicts.
Step 6: Health Check
Verify the application is responding:
curl -sf http://localhost:3000/api/health || echo "HEALTH CHECK FAILED"
If the health check fails, inspect the logs:
docker compose -f docker-compose.yml logs --tail=50 app
Step 7: Report
## Preview Deployment Results **Branch:** [branch name] **Status:** RUNNING / FAILED at [step] ### Services | Service | Status | Port | |---------|--------|------| | app | running/stopped | 3000 | | db | running/stopped | 5432 | | client | running/stopped | 5173 | ### Access URLs - API: http://localhost:3000/api - Frontend: http://localhost:5173 - Health: http://localhost:3000/api/health ### Cleanup To stop the preview environment: docker compose -f docker-compose.yml down