Docker基础工具免费版
提供Docker容器生命周期、镜像管理、Compose编排与网络卷管理,适合开发者日常使用。Use when 需要代码生成、编程辅助、调试测试、开发部署时使用。不适用于无明确技术栈的模糊需求。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。
天轰穿
@thcjp
What This Skill Does
Command-line tool for managing Docker containers, images, Compose services, and volumes. Covers container lifecycle (run, stop, remove), image build/tag/push, multi-container orchestration with docker-compose, and container inspection/debugging.
Replaces manually typing Docker commands by providing a structured interface for common container operations, image management, and Compose workflows.
When to Use It
- Run a new container with port mapping and environment variables
- Build a Docker image from a Dockerfile with custom tags
- Stop and remove all containers in a Compose project
- Inspect container logs and resource usage for debugging
- Pull a specific image version and tag it for local use
- Scale a service in a Compose stack to multiple instances
Install
$ openclaw skills install @thcjp/docker-essentials-tool-free功能说明: 本技能涵盖 中文交互、化工作流场景 等核心能力。
Docker基础工具 - 免费版
概述
Docker基础工具免费版为开发者提供日常容器管理能力。工具涵盖容器生命周期管理、镜像构建与标签管理、Docker Compose多容器编排以及网络与卷管理,帮助开发者高效进行本地容器化开发。
本版本适合本地开发环境容器化、单机多容器应用部署和容器问题排查调试。所有命令通过 Docker CLI 执行,无需安装额外插件。
核心能力
1. 容器生命周期管理
覆盖容器从创建到销毁的完整生命周期。
docker run nginx # 前台运行
docker run -d nginx # 后台运行
docker run --name my-nginx -d nginx # 命名运行
docker run -p 8080:80 -d nginx # 端口映射
docker run -e MY_VAR=value -d app # 环境变量
docker run -v /host/path:/container/path -d app # 卷挂载
docker run --rm alpine echo "Hello" # 运行后自动删除
docker run -it ubuntu bash # 交互式运行
docker ps # 查看运行中容器
docker ps -a # 查看所有容器
docker stop container_name # 停止容器
docker start container_name # 启动容器
docker restart container_name # 重启容器
docker rm container_name # 删除容器
docker rm -f container_name # 强制删除运行中容器
docker container prune # 清理已停止容器
输出: 返回容器生命周期管理的执行结果,包含操作状态和输出数据。
- 执行此能力时使用
input_params参数,支持创建/查询/导出操作
2. 镜像构建与管理
docker build -t myapp:1.0 . # 基础构建
docker build -f Dockerfile.dev -t myapp:dev . # 指定Dockerfile
docker build --build-arg VERSION=1.0 -t myapp . # 构建参数
docker build --no-cache -t myapp . # 无缓存构建
docker images # 列出镜像
docker pull nginx:latest # 拉取镜像
docker tag myapp:1.0 myapp:latest # 打标签
docker push myrepo/myapp:1.0 # 推送镜像
docker rmi image_name # 删除镜像
docker image prune # 清理悬空镜像
docker image prune -a # 清理所有未使用镜像
输出: 返回镜像构建与管理的执行结果,包含操作状态和输出数据。
- 执行此能力时使用
input_params参数,支持创建/查询/导出操作
3. 容器检查与调试
docker logs container_name # 全部日志
docker logs -f container_name # 跟踪日志
docker logs --tail 100 container_name # 最后100行
docker logs -t container_name # 显示时间戳
docker exec container_name ls -la # 执行命令
docker exec -it container_name bash # 交互式进入
docker exec -u root -it container_name bash # 以root进入
docker inspect container_name # 详细信息
docker inspect -f '<动态配置>' container_name # 提取IP
docker stats # 资源使用
docker top container_name # 进程信息
输出: 返回容器检查与调试的执行结果,包含操作状态和输出数据。
- 执行此能力时使用
input_params参数,支持创建/查询/导出操作
4. Docker Compose 编排
docker-compose up # 启动服务
docker-compose up -d # 后台启动
docker-compose down # 停止并删除
docker-compose down -v # 同时删除卷
docker-compose logs # 查看日志
docker-compose logs -f web # 跟踪指定服务日志
docker-compose up -d --scale web=3 # 扩展服务实例
docker-compose ps # 查看服务状态
docker-compose exec web bash # 进入服务容器
docker-compose restart web # 重启服务
docker-compose build web # 重新构建服务
docker-compose up -d --build # 重新构建并启动
输出: 返回Docker Compose 编排的执行结果,包含操作状态和输出数据。
- 执行此能力时使用
input_params参数,支持创建/查询/导出操作
5. 网络与卷管理
docker network ls # 列出网络
docker network create mynetwork # 创建网络
docker network connect mynetwork container_name # 连接网络
docker network disconnect mynetwork container_name # 断开网络
docker network inspect mynetwork # 查看网络详情
docker network rm mynetwork # 删除网络
docker volume ls # 列出卷
docker volume create myvolume # 创建卷
docker volume inspect myvolume # 查看卷详情
docker volume rm myvolume # 删除卷
docker volume prune # 清理未使用卷
docker run -v myvolume:/data -d app # 使用命名卷
输出: 返回网络与卷管理的执行结果,包含操作状态和输出数据。 能力覆盖范围:本skill的核心能力覆盖以下场景关键词:镜像管理、编排与网络卷管理、适合开发者日常使、面向开发者的、容器管理辅助工具、涵盖容器生命周期、镜像构建管理、编排与网络卷操作、核心能力、镜像构建与标签管、多容器编排、日志查看与容器调等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。
- 执行此能力时使用
input_params参数,支持创建/查询/导出操作
使用场景
场景一:本地开发环境搭建
使用Docker快速搭建本地开发环境。
docker run -it --rm \
-v $(pwd):/app \
-w /app \
-p 3000:3000 \
node:18 \
npm run dev
docker run -d \
--name postgres \
-e POSTGRES_PASSWORD=secret \
-e POSTGRES_DB=mydb \
-v postgres-data:/var/lib/数据库/data \
-p 5432:5432 \
postgres:15
docker run -d \
--name redis \
-p 6379:6379 \
redis:7-alpine
场景二:多容器应用编排
使用Docker Compose编排多容器应用。
version: '3.8'
services:
web:
build: .
ports:
- "3000:3000"
environment:
- DB_HOST=db
- REDIS_HOST=redis
depends_on:
- db
- redis
volumes:
- .:/app
- /app/node_modules
db:
image: postgres:15
environment:
POSTGRES_PASSWORD: secret
POSTGRES_DB: mydb
volumes:
- postgres-data:/var/lib/数据库/data
ports:
- "5432:5432"
redis:
image: redis:7-alpine
ports:
- "6379:6379"
volumes:
postgres-data:
docker-compose up -d
docker-compose ps
docker-compose logs -f web
docker-compose up -d --scale web=3
docker-compose down -v
错误处理
快速排查容器运行问题。
#!/bin/sh
CONTAINER="${1:?用法: debug-container.sh <container_name>}"
echo "=== 容器诊断: $CONTAINER ==="
echo "--- 容器状态 ---"
docker ps -a --filter "name=$CONTAINER" --format "table <动态配置>\t<动态配置>\t<动态配置>"
echo -e "\n--- 资源使用 ---"
docker stats --no-stream "$CONTAINER"
echo -e "\n--- 最近日志(50行) ---"
docker logs --tail 50 "$CONTAINER"
echo -e "\n--- 网络配置 ---"
docker inspect -f 'IP: <动态配置>' "$CONTAINER"
docker inspect -f '端口映射: <动态配置>' "$CONTAINER"
echo -e "\n--- 挂载卷 ---"
docker inspect -f '<动态配置><动态配置> -> <动态配置><动态配置>' "$CONTAINER"
| 序号 | 错误场景 | 原因 | 处理方式 | 优先级 |
|---|---|---|---|---|
| 1 | 输入参数缺失 | 用户未提供必要参数 | 提示用户提供所需参数后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 | P0 |
| 2 | 执行超时 | 处理时间过长 | 检查输入数据量,分批处理 | P1 |
| 3 | 输出格式错误 | 结果不符合预期格式 | 检查output_format参数配置 | P1 |
不适用场景
以下场景Docker基础工具免费版不适合处理:
- 无明确技术栈的模糊需求
- 纯架构设计决策
- 运维部署管理
触发条件
需要代码生成、编程辅助、调试测试、开发部署时使用。不适用于非本工具能力范围的需求。
快速开始
Step 1:验证Docker环境
docker version
docker info
docker run hello-world
Step 2:触发容器操作
在 AI Agent 中输入指令:
请帮我用Docker启动一个Node.js开发环境,映射端口3000并挂载当前目录。
Step 3:管理容器
Agent 会生成并执行相应的 Docker 命令,提供容器管理建议。
结果处理: 执行完成后,查看输出结果确认操作状态。成功时输出包含处理摘要和结果数据;失败时根据错误信息排查问题,查阅错误处理章节获取恢复步骤。
示例
开发环境Docker配置
version: "1.0"
dev_container:
base_image: node:18
work_dir: /app
ports:
- 3000:3000
- 9229:9229 # 调试端口
volumes:
- .:/app
- node_modules:/app/node_modules
environment:
- NODE_ENV=development
services:
database:
image: postgres:15
port: 5432
persist: true
cache:
image: redis:7-alpine
port: 6379
persist: false
cleanup:
prune_images: false
prune_volumes: false
prune_containers: true
多阶段Dockerfile示例
FROM node:18 AS builder
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
FROM nginx:alpine
COPY --from=builder /app/dist /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
优选实践
- 使用.dockerignore:减少构建上下文体积
node_modules
npm-debug.log
.git
.gitignore
dist
.env
*.md
- 合并RUN指令:减少镜像层数
RUN apt-get update
RUN apt-get install -y curl
RUN rm -rf /var/lib/apt/lists/*
RUN apt-get update && \
apt-get install -y curl && \
rm -rf /var/lib/apt/lists/*
- 使用多阶段构建:减小最终镜像体积
FROM node:18 AS builder
WORKDIR /app
COPY . .
RUN npm ci && npm run build
FROM node:18-alpine
WORKDIR /app
COPY --from=builder /app/dist ./dist
COPY --from=builder /app/node_modules ./node_modules
CMD ["node", "dist/index.js"]
- 始终打标签:避免使用latest标签在生产环境
docker build -t myapp:latest .
- 定期清理:释放磁盘空间
docker system df # 查看磁盘使用
docker system prune # 清理未使用资源
docker system prune -a # 清理所有未使用镜像
docker system prune --volumes # 同时清理卷
常见问题
Q1:容器启动后立即退出怎么办?
docker logs container_name
State.ExitCode}}' container_name
docker run -it --entrypoint bash myapp
Q2:如何进入运行中的容器?
docker exec -it container_name bash
docker exec -it container_name sh # alpine镜像
docker attach container_name
Q3:端口冲突怎么办?
lsof -i :8080 # macOS/Linux
netstat -ano | findstr 8080 # Windows
docker run -p 9080:80 -d nginx # 改用9080端口
docker ps --format "table <动态配置>\t<动态配置>"
Q4:免费版与专业版有何区别?
| 能力维度 | 免费版 | 专业版 |
|---|---|---|
| 容器编排 | 单机Compose | 多机Swarm/K8s |
| 镜像优化 | 基础多阶段 | 深度优化分析 |
| 安全扫描 | 不支持 | 质量检查 |
| 监控告警 | 手动查看 | 持续监控 |
| 批量操作 | 不支持 | 批量管理 |
| CI/CD集成 | 手动 | 流水线集成 |
Q5:Docker Compose版本如何选择?
docker compose up -d
docker-compose up -d
docker compose version
依赖说明
运行环境
- Agent 平台:支持 SKILL.md 的任意 AI Agent(Claude Code / Cursor / Codex / Gemini CLI 等)
- 操作系统:Windows / macOS / Linux
- 运行时:Docker Engine 20.10+ / Docker Compose v2+
依赖详情
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| Docker Engine | 运行时 | 必需 | docker.com 下载安装 |
| Docker Compose | 工具 | 推荐 | Docker Desktop自带或单独安装 |
| LLM API | API | 必需 | 由 Agent 内置 LLM 提供 |
API Key 配置
- 本 Skill 基于 Markdown 指令,无需额外 API Key
- 如需推送镜像到私有仓库,需配置仓库凭证:
docker login registry.example.com
可用性分类
- 分类:MD+execute(纯 Markdown 指令,需要 exec 命令行执行能力)
- 说明:基于 Markdown 的 AI Skill,通过自然语言指令驱动 Agent 执行 Docker 管理任务
- 适用规模:单机环境,适合开发和测试场景
已知限制
- 本地运行,不支持多设备同步
安全注意事项
| 风险类型 | 防范措施 |
|---|---|
| API密钥泄露 | 通过环境变量配置,禁止硬编码到代码或配置文件中 |
| 命令执行风险 | 仅执行白名单命令,避免拼接用户输入到命令行参数中 |
| 网络通信安全 | 使用HTTPS协议,验证SSL证书有效性 |
| 敏感数据暴露 | 输出结果中不包含密钥、令牌等敏感信息 |
使用前请确认已阅读依赖说明章节,确保运行环境满足安全要求。
效率量化分析
| 操作场景 | 手动耗时 | 自动化耗时 | 效率提升 |
|---|---|---|---|
| 文件解析与提取 | 5-10分钟/个 | <5秒/个 | 60-120x |
| 批量文件处理(100个) | 8-16小时 | <5分钟 | 96-192x |
| API调用与响应解析 | 2-3分钟/次 | <1秒/次 | 120-180x |
| 多接口数据聚合 | 15-30分钟 | <10秒 | 90-180x |
| 命令执行与结果收集 | 3-5分钟/次 | <2秒/次 | 90-150x |
| 重复任务批量执行 | 因任务而异 | 线性缩减 | 5-50x |
| 错误排查与修复 | 10-30分钟 | <30秒 | 20-60x |
差异化对比
| 对比维度 | 本技能 | 传统手动方式 | 通用脚本工具 |
|---|---|---|---|
| 自动化程度 | 全流程自动 | 完全手动 | 部分自动 |
| 错误处理 | 内置错误恢复 | 依赖人工经验 | 基本try-catch |
| 可复用性 | 参数化配置 | 一次性脚本 | 模板化 |
| 安全合规 | 内置安全检查 | 无安全保障 | 无安全保障 |
| 适用场景 | 核心功能 | 通用场景 | 通用场景 |
核心功能
- 自动化执行: 基于指令驱动的自动化流程
- 文件处理: 支持多种文件格式的读取、解析和写入操作
- API集成: 通过标准化接口调用外部服务并处理响应
- 命令执行: 在安全沙箱中执行系统命令并收集结果
- 信息检索: 快速搜索和过滤目标数据
Top skills in this category
Openclaw Command Center
@jontsaiMission control dashboard for OpenClaw - real-time session monitoring, LLM usage tracking, cost intelligence, and system vitals. View all your AI agents in o...
Interview Simulator
@wscatsSimulates mock interviews for any role and experience level with tailored technical, behavioral, and case questions plus detailed feedback and scoring.
moltbook-interact
@lunarcmdInteract with Moltbook social network for AI agents. Post, reply, browse, and analyze engagement. Use when the user wants to engage with Moltbook, check their feed, reply to posts, or track their activity on the agent social network.
Web Development
@ivangdavilaBuild, debug, and deploy websites using HTML, CSS, JavaScript, and modern frameworks following production best practices.
Baidu Wenku AI picture book of video
@ide-rea百度文库AI绘本是一个基于人工智能制作绘本视频的工具,支持生成静态绘本和动态绘本(URL输出)。能帮助文本内容创作者们在缺乏绘画技能的情况下,快速生成精美绘本视频,提高内容生产效率。无论是在儿童教育、亲子互动、品牌营销,还是在社交媒体内容创作等领域都能应用。