Vitest Testing
提供 Vitest 单元测试与集成测试的模式与最佳实践,涵盖断言、异步测试与模拟方法。
下载 36
用于 Docker 容器生命周期管理、日志分析与资源清理的自动化工具。
openclaw skills install @ericlooi504/docker-ops-toolkit命令、参数、文件名以原文为准
Docker 容器生命周期管理、健康检查、日志分析、资源清理、Compose 编排以及故障排查。当 Codex 需要管理 Docker 容器、调试运行中的服务或清理 Docker 资源时使用。
docker compose 插件(用于 Compose)docker ps -a --format 'table {{.Names}}\t{{.Status}}\t{{.Ports}}\t{{.Image}}'
docker stats --no-stream # 实时资源使用情况docker inspect <container> | jq '.[0].State' # 状态、退出码、健康状况
docker inspect <container> --format '{{json .Mounts}}' | jq .docker logs <container> --tail 100 --since 5m
# 使用 docker-log-inspector.py 进行过滤:
python3 scripts/docker-log-inspector.py <container> --since 30m --filter ERROR --summary# 标准清理
bash scripts/docker-cleanup.sh
# 强力清理(移除卷和构建缓存)
bash scripts/docker-cleanup.sh --aggressive
# 仅预览
bash scripts/docker-cleanup.sh --dry-runbash scripts/docker-health.sh # 所有容器
bash scripts/docker-health.sh <container-name> # 单个容器docker compose up -d # 启动服务
docker compose down -v # 停止并移除卷
docker compose logs -f --tail 50 # 实时跟踪日志
docker compose ps # 查看状态
docker compose exec <service> sh # 进入服务的 shell
docker compose build --no-cache <svc> # 无缓存重建
docker compose restart <service> # 重启单个服务# 查找占用端口的进程
sudo lsof -i :<port>
docker ps --format '{{.Names}} {{.Ports}}' | grep <port>
# 解决方法:修改 docker-compose.yml 中的端口映射,或停止冲突的容器docker inspect <container> --format '{{json .HostConfig.Memory}}'
docker stats <container> --no-stream
# 修复方法:在 docker-compose.yml 中添加
# deploy:
# resources:
# limits:
# memory: 512M
# cpus: '0.5'docker images --format 'table {{.Repository}}\t{{.Tag}}\t{{.Size}}\t{{.CreatedSince}}'
docker image prune -a # 移除所有未使用的镜像
docker rmi <image-id> # 删除指定镜像
docker pull <image>:<tag> # 更新镜像
docker build -t <name>:<tag> . # 构建镜像
docker build --no-cache -t <name> . # 强制重新构建docker network ls
docker network inspect <network>
# 从容器内测试连通性:
docker exec <container> ping <other-container>
docker exec <container> curl -v http://service:portdocker volume ls
docker volume inspect <volume>
docker run --rm -v <volume>:/data alpine ls -la /data # 查看卷内容docker logs <container> # 检查退出原因
docker inspect <container> --format '{{.State.ExitCode}}'
# 常见原因:
# 0 → 正常退出(是否预期?)
# 1 → 应用程序错误(检查日志)
# 137 → SIGKILL(因内存不足被终止)
# 139 → 段错误(segfault)docker system df # 查看磁盘使用概况
du -sh /var/lib/docker/containers/ # 查看容器覆盖层大小
bash scripts/docker-cleanup.sh --aggressivedocker exec <container> cat /etc/resolv.conf
# 修复方法:在 docker-compose.yml 中添加
# dns:
# - 8.8.8.8
# - 1.1.1.1# 将用户加入 docker 组
sudo usermod -aG docker $USER && newgrp dockerscripts/docker-cleanup.sh** — 支持预览模式的交互式清理脚本scripts/docker-health.sh** — 多容器健康状态概览scripts/docker-log-inspector.py** — 支持正则过滤与严重性摘要的日志分析工具references/compose-patterns.md** — Docker Compose 模式与实用技巧已收录 3 个 Skill