360 Secure SkillHub
360 安全技能中心

Docker沙箱入门工具

通过本地Docker守护进程创建隔离容器沙箱,支持CPU/内存限制、网络隔离、只读文件系统与超时自动清理,用于运行不信任代码、测试新镜像和搭建实验环境;免费版不支持多沙箱批量管理、快照与自定义安全策略。

thcjp
thcjp
热度 51.65
最近更新 2026-09-22 02:59:02
分类:开发依赖:代码执行 / 读写文件应用场景:DevOps / 调试排错 / 自动化脚本

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add docker-sandbox-tool-free
Metadata
name
docker-sandbox-tool-free
description
Docker安全沙箱环境,支持隔离运行与基础资源限制,适合代码测试。Use when 需要代码生成、编程辅助、调试测试、开发部署时使用。不适用于无明确技术栈的模糊需求。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。提供结构化输出和错误处理机制。
license
Proprietary
allowed-tools
read exec
compatibility
Requires LLM with tool-use capability
metadata
{"displayName":"Docker沙箱入门工具","version":"1.0.0","summary":"Docker安全沙箱环境,支持隔离运行与基础资源限制,适合代码测试。","tags":["Operations","Docker","安全沙箱","测试"],"source":"SkillHub","converted_at":"2026-07-22T17:58:36"}
tools
["exec","read"]

功能说明: 本技能涵盖 中文交互、化工作流场景 等核心能力。

Docker沙箱入门工具(免费版)

概述

本工具为个人开发者提供Docker安全沙箱能力。通过容器隔离技术,创建安全的运行环境,支持资源限制、网络隔离和文件系统保护。适合安全地运行不信任代码、测试新镜像和进行开发实验。

核心能力

沙箱功能

功能 说明 免费版支持
容器隔离 独立命名空间 支持
CPU限制 CPU配额限制 支持
内存限制 内存上限设置 支持
网络隔离 无网络/受限 支持
文件系统 只读/临时文件系统 支持
多沙箱 多实例管理 不支持
快照 状态保存恢复 不支持
高级策略 自定义安全策略 不支持

输出: 返回沙箱功能的执行结果,包含操作状态和输出数据。

安全隔离层级

层级 隔离内容 说明
进程隔离 PID命名空间 沙箱内进程互不可见
网络隔离 网络命名空间 独立网络栈
文件隔离 挂载命名空间 独立文件系统视图
用户隔离 用户命名空间 root映射为非特权
资源隔离 cgroups CPU/内存/IO限制

输出: 返回安全隔离层级的执行结果,包含操作状态和输出数据。

核心功能执行

用input_params参数进行配置。

输出: 返回核心功能执行的执行结果,包含操作状态和输出数据。

  • 执行此能力时使用input_params参数,支持创建/查询/导出操作 能力覆盖范围:本skill的核心能力覆盖以下场景关键词:Docker、安全沙箱环境、支持隔离运行与基、础资源限制、适合代码测试、面向个人开发者的、安全沙箱工具、提供隔离的容器运、行环境、支持资源限制、网络隔离与文件系、统隔离、Use、when、需要代码生成、编程辅助、调试测试、开发部署时使用、不适用于无明确技、术栈的模糊需求、适用于独立开发者、企业团队和自动化、工作流场景等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。

使用场景

场景一:安全运行不信任代码

用户输入:"在沙箱里运行这个不信任的脚本"

# 创建安全沙箱运行
python3 scripts/sandbox.py run \
  --image python:3.11-slim \
  --script ./untrusted.py \
  --no-network \
  --memory 256m \
  --cpu 0.5 \
  --read-only \
  --timeout 60

# 沙箱自动执行并在超时后清理

场景二:测试新镜像

用户输入:"安全地测试这个新构建的镜像"

# 沙箱测试镜像
  --image my-app:test \
  --network restricted \
  --memory 512m \
  --command "npm test"

场景三:开发实验环境

用户输入:"创建一个隔离的实验环境"

# 创建实验沙箱
  --image ubuntu:22.04 \
  --name experiment \
  --network none \
  --memory 1g \
  --cpu 1.0 \
  --volume /tmp/sandbox:/data:rw

# 进入沙箱
py exec --name experiment

快速开始

  1. 阅读## 核心能力章节了解skill功能
  2. 按## 依赖说明配置环境
  3. 执行所需能力对应的命令
  4. 参考## 错误处理章节处理异常
  5. 查看## FAQ解答常见疑问

环境准备

# 依赖说明
# 见docker-toolkit安装说明

# 安装Python依赖
pip install docker

# 验证

常用命令

# 创建沙箱
py create --image ubuntu:22.04 --name test --network none

# 运行脚本
py run --image python:3.11 --script ./test.py --no-network --timeout 60

# 测试镜像
py test-image --image my-app:test --command "npm test"

# 列出沙箱

# 清理沙箱
py cleanup --name test

结果处理: 执行完成后,查看输出结果确认操作状态。成功时输出包含处理摘要和结果数据;失败时根据错误信息排查问题,查阅错误处理章节获取恢复步骤。

示例

沙箱安全配置

sandbox_config:
  defaults:
    network: "none"              # none | restricted | bridge
    memory_limit: "256m"
    cpu_limit: 0.5
    read_only: true
    tmpfs_size: "64m"
    timeout: 60                  # 默认超时(秒)
    user: "nobody"               # 非特权用户

  security:
    no_new_privileges: true      # 禁止提权
    cap_drop: ["ALL"]            # 删除所有capabilities
    cap_add: []                  # 不添加任何capability
    seccomp: "default"           # 安全计算模式

  cleanup:
    auto_cleanup: true           # 超时后自动清理
    cleanup_on_exit: true        # 退出后清理

优选实践

  1. 最小权限:删除所有capabilities,仅添加必要的
  2. 资源限制:始终设置CPU和内存限制,防止资源耗尽
  3. 网络隔离:不信任代码使用none网络模式
  4. 超时设置:设置合理超时,避免长时间运行
实践要点 说明
只读文件系统 配合tmpfs使用,防止写入持久化
用户隔离 使用非特权用户运行
自动清理 超时后自动删除沙箱
日志记录 记录沙箱内活动用于审计

常见问题

Q1:沙箱安全性如何?

Docker沙箱提供进程、网络、文件系统层面的隔离,能防止大部分常规攻击。但对于内核漏洞等高级威胁无法完全防护。高度敏感场景建议使用专用虚拟机。

Q2:免费版支持多沙箱吗?

免费版支持创建沙箱但不支持批量管理。如需管理多个沙箱实例,建议升级PRO版。

Q3:沙箱内的数据会丢失吗?

是的。沙箱默认使用临时文件系统,容器删除后数据丢失。需要持久化的数据需挂载外部卷(不推荐用于不信任代码)。

Q4:可以运行GUI应用吗?

免费版主要支持命令行应用。运行GUI应用需要额外的X11转发配置,建议升级PRO版获取完整支持。

依赖说明

运行环境

  • Agent平台: 支持SKILL.md的任意AI Agent(Claude Code / Cursor / Codex / Gemini CLI等)
  • 操作系统: Linux(推荐) / macOS(有限支持)
  • Python版本: 3.8+
  • Docker: 20.0+

第三方依赖

依赖项 类型 是否必需 获取方式
LLM API API 必需 由Agent内置LLM提供
Python 运行时 必需 系统安装或conda环境
docker Python库 必需 pip install docker

API Key 配置

  • 免费版无需API Key
  • 所有操作通过本地Docker守护进程执行

可用性分类

  • 分类: MD+EXEC(Markdown指令+Python脚本+Docker执行)
  • 说明: 基于Docker的安全沙箱环境
  • 免费版限制: 基础隔离、不支持多沙箱管理与快照
  • 安全声明: 沙箱提供基础隔离,不保证完全安全,高度敏感场景请使用专用虚拟机

错误处理

错误场景 原因 处理方式
配置错误 参数缺失或格式错误 检查依赖说明中的配置要求
运行时错误 运行环境不满足 确认运行环境符合依赖说明
网络错误 连接超时或不可达 执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案

已知限制

  • 需LLM支持,无LLM环境不可用
  • 复杂业务场景建议结合人工经验判断
  • 执行效率受模型能力与网络环境影响

安全注意事项

风险类型 防范措施
API密钥泄露 通过环境变量配置,禁止硬编码到代码或配置文件中
命令执行风险 仅执行白名单命令,避免拼接用户输入到命令行参数中
网络通信安全 使用HTTPS协议,验证SSL证书有效性
敏感数据暴露 输出结果中不包含密钥、令牌等敏感信息

使用前请确认已阅读依赖说明章节,确保运行环境满足安全要求。

核心功能

  • 自动化执行: 基于指令驱动的自动化流程
  • 文件处理: 支持多种文件格式的读取、解析和写入操作
  • API集成: 通过标准化接口调用外部服务并处理响应
  • 命令执行: 在安全沙箱中执行系统命令并收集结果
  • 信息检索: 快速搜索和过滤目标数据

核心功能

  • 自动化执行: 基于指令驱动的自动化流程
  • 文件处理: 支持多种文件格式的读取、解析和写入操作
  • API集成: 通过标准化接口调用外部服务并处理响应
  • 命令执行: 在安全沙箱中执行系统命令并收集结果
  • 信息检索: 快速搜索和过滤目标数据