1、前言
HOJ的判题机底层使用的是go-judge,本教程介绍如何基于Docker部署go-judge判题服务;
2、部署流程
本文基于宝塔面板管理云服务器,在宝塔面板上安装好docker,云服务器安装的系统为CentOS;
如果不是基于宝塔管理服务器,则可自行搜索使用命令单独安装;
2.1 CentOS开启用户命名空间
为什么要开启?
在CentOS系统中,不开启的话最后go-judge会启动不起来,会报如下的错误:
在 CentOS 内核 3.8 或更高版本中,添加了 user namespaces (用户名命名空间)功能。但是,该功能默认情况下是禁用的,原因是 Red Hat 希望该功能在社区中孵化更长时间,以确保该功能的稳定性和安全性。目前越来越多的软件开始涉及该功能,例如 Docker 等。
# 查看系统 user namespaces 最大为 0
[root&