OpenSource-Hub
J

Judge0

4.2k stars·开发工具·已提供 SHA-256 校验码,下载后可自行核对文件完整性

开源在线代码执行系统,在安全沙箱中运行不受信任的代码,支持90+语言,提供简单HTTP API。

智能下载

前往项目主页

该项目暂未提供安装包,请直接访问源代码仓库

可自托管的在线代码沙箱,适合AI代码执行、在线判题、编程考试等场景。

核心功能

  • 轻松自托管:Docker Compose一键部署,也可托管使用SaaS
  • 支持90+编程语言,包括Python、Java、C++、Go、Rust等
  • 隔离沙箱执行,保护宿主系统安全
  • 简单的HTTP JSON API,提供官方Python SDK
  • 支持多文件项目编译运行

避坑指南

  • 自托管需要一定的运维知识(Docker、网络、存储配置)。2. 默认使用 uniikernel 隔离,但生产环境建议加强安全(如 seccomp、AppArmor)。3. 免费版语言支持比付费的 Extra CE 少(约60种 vs 90+)。4. 大规模高并发需合理配置 Worker 数量和 Redis/PostgreSQL 资源。5. 官方文档和 API 文档都较详细,但社区资源中等,疑难问题需查阅 GitHub Issues。

适用场景

  • AI智能体执行生成的代码(如大模型写代码后自动运行测试)
  • 在线编程竞赛平台(Online Judge)
  • 编程教学与在线评测系统(e-learning)
  • 候选编程能力评估与招聘考核
  • 在线IDE或代码编辑器(如Judge0 IDE)
  • 企业内部代码沙箱验证(如安全测试)

详细介绍

Judge0(发音类似“judge zero”)是一个健壮、可扩展且开源的自由在线代码执行系统。它允许你在隔离的沙箱(容器)中安全地运行不受信任的代码,支持超过90种编程语言。通过简单的HTTP JSON API和官方Python SDK,可以轻松集成到任何应用中。支持多文件项目编译执行以及附加文件输入。返回详细的执行结果(标准输出、标准错误、退出码、信号等)。支持设置自定义编译器选项、命令行参数、时间与内存限制。提供Webhook异步回调通知。既可以自托管(Docker Compose/Kubernetes),也可以使用托管的SaaS版。底层采用模块化架构:Redis队列、PostgreSQL数据库和沙箱化Worker。广泛用于竞赛平台、在线学习、编程考试、AI智能体、在线IDE等场景。

常见问题与排障 (2)

故障排除
为什么在macOS上更新Docker Desktop后settings.json文件丢失?如何设置deprecatedCgroupv1?

从Docker Desktop 4.34开始,设置文件已从 settings.json 重命名为 settings-store.json。要应用 deprecatedCgroupv1,请编辑 ~/Library/Group Containers/group.com.docker/settings-store.json 并手动添加属性 "deprecatedCgroupv1": true,然后重启Docker。该文件位置已在Docker Desktop设置管理中说明。如果您使用的版本较旧(低于4.34),请继续使用同一路径下的 settings.json

来源 Issue #525
故障排除
如何修复 Judge0 Docker 中 'chown: cannot access '/box': No such file or directory' 错误?

确保一个主机目录挂载到容器中的 /box。在 docker run 命令中添加 -v /path/on/host:/box,或者在 docker-compose 中定义该卷。如果使用预构建镜像,可以在入口点脚本中创建该目录,或使用 /box 自动创建的版本。参见 GitHub issue #325 获取社区解决方案。

来源 Issue #567

标签

code-executionsandboxonline-judgeapiself-hostededucationdockerkubernetes

快速上手

1

下载安装包

点击上方按钮下载对应系统的安装包

2

安装软件

双击下载的安装程序,按提示完成安装

3

步骤1:确保已安装 Docker 和 Docker Compose

4

步骤2:克隆仓库: git clone https://github.com/judge0/judge0.git && cd judge0

5

步骤3:运行部署脚本: ./deploy.sh (或按照CHANGELOG中的手动步骤配置)

安装指引
  1. 步骤1:确保已安装 Docker 和 Docker Compose
  2. 步骤2:克隆仓库: git clone https://github.com/judge0/judge0.git && cd judge0
  3. 步骤3:运行部署脚本: ./deploy.sh (或按照CHANGELOG中的手动步骤配置)
文件完整性

暂未获取到校验码

该项目暂未在 GitHub Release 页面提供 SHA-256 校验码

SHA256 校验码

暂无校验码

建议从 GitHub Releases 页面直接下载,并自行核对文件完整性

本平台所有 SHA-256 校验码均提取自项目在 GitHub 官方 Release 页面发布的文件,未做任何修改。你可以通过 GitHub Releases 页面自行验证。

运维指引

卸载说明

停止并删除所有相关容器:docker-compose down -v;删除项目文件夹即可完全移除。

无额外依赖

下载后即可直接使用,无需安装其他运行环境

项目信息
开源协议GPL-3.0
最后更新2026-06-27 07:10:09
GitHub 仓库官方网站

遇到问题?查看下方 FAQ

2 FAQs

相似推荐