半小时,在Win11SL上部署你自己的 Online Judge
TheRealJTC · · 个人记录
更好的阅读体验
作为一个OIer,拥有一个自己的 OJ 还是十分有用的。你可以创建自己的独特题库并不断练习。在洛谷这么久,相信你早就看管理员不爽了。假使你自建OJ,你就是超级管理员。如果你的学校还没有自己的 Online Judge,你也可以为学校创建一个信息学评测平台。这并不复杂,也不需要很大的成本,只要你耐心地遵循本文的步骤进行操作,你一定可以成功建立你的OJ!
下面进入正题:
1.准备工作
确保你有最新版的win11,然后安装开发人员主页(预览版)。
(就是叫你更新一下啦)
我的笔记本是这样的
1.1 配置你的WSL
打开开发人员主页,你会看到这样的内容:
点击左边菜单栏第三个按钮(计算机配置)
点击“安装应用程序”
可能要加载一段时间,请耐心等待哦 亲 ~
为什么说是“半小时”?大部分时间就浪费在这了(悲)
加载好之后,在这些应用程序中找到vim,python-pip,curl和git,给这些应用全部点击右上角的+号。狗许安好否界面大概如下:(因为我先前已安装过后面三个应用,所以是灰色的,你们应该可以勾选)
注意看右边的框,确定你有没有勾选玩。
确认完毕,点击next,开始安装。安装过程我就不截图了。
可能会出现有应用安装失败的现象,确保python-pip,curl和git安装成功就行了,vim可以不装。
装完后建议重启一下电脑。
1.2 配置docker(非必须)
在你的桌面上找到docker desktop,双击打开。
点击上面一栏的设置图标,在哪我不指了。点击"docker engine"。
在里面加上这样一堆:
"registry-mirrors": [
"https://registry.docker-cn.com"
]
整体应该就是这样的:
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false,
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}
效果如上图,点击"Apply&Restart",重启docker软件。
2.安装 Online Judge
现在很多地方建OJ都会选择 Hustoj 。这个OJ的确很经典,但是它的 UI 设计是真心有点看不下去,所以我们选择另一款开源OJ:Qduoj。这款OJ来自于青岛大学。Qduoj 的设计风格真心不错,它唯一的缺点就是:不支持Pascal。所以使用Pascal语言的同学,赶快转到C++吧!
Qduoj 的开源项目在 Github 上,我们需要将它下载到本地。
用管理员权限打开cmd,并定位到你想要存储OJ数据的地址。我选的是D盘。然后输入:
git clone -b 2.0 https://github.com/QingdaoU/OnlineJudgeDeploy.git && cd OnlineJudgeDeploy
如果get失败的话多试几次。注意:千万不要手动用浏览器进github去下载!只能用git !
拉取完成后请输入:
docker-compose up -d
耐心等待一会,等他顺利运行完且没有报错后,你的OJ就安装好了!
确认你的OJ是否可用请在cmd中输入:
docker ps -a
当看到所有的容器的状态没有 unhealthy 或 Exited (x) xxx 就代表 OJ 已经启动成功。
如果遇到 unhealthy 请不要惊慌,这可能是你的OJ还在后台初始化。请耐心等待一会,再运行此命令。
如果遇到 Exited (x) xxx ,你可以在docker desktop中查看详细信息,并手动重新启动服务器。
3.配置 Online Judge
访问127.0.0.1就可以看到你的Online Judge了。
点击右上角的“ Login ”,登录初始管理员账户
账号:root
密码:rootroot
登陆后点击右上角的root,选择“ Setting ”就可以设置语言、昵称等信息。更多管理设置在/admin下。随后的设置,就留给你自己去探索吧。
官方文档在这里