Linux 容器 一个基于容器化技术的沙箱
## 起源 本项目原本的目的是用 GO 重构之前参与过的一个 OJ 的评测系统,目前完成了沙箱的部分分享一下。 ## 需求 评测系统通常需要对提交的代码进行编译和运行。通常运行的算法代码并不需要特殊的权限和系统访问。沙箱需要限制住恶意代码对于评测系统运行的可能的破坏行为。 一个沙箱的实现包含了: + 安全: 沙箱内的程序不允许进行超出计算需求的系统访问。包括网络访问,未授权的文件系统访问。 + 限制: 沙箱内的程序仅能使用限定的 CPU 时间和 内存 + 快...阅读全文