快速部署CUP Online Judge判题机
本文最后更新于 1717 天前,其中的信息可能已经有所发展或是发生改变。

Table of Content

经过进一步的打磨,CUP Online Judge的判题机终于独立于前后端,可以作为一个后台服务在系统运行了。

考虑到判题过程强依赖操作系统环境,因此整个过程我也打了docker-compose包,不想看下面冗长的部署内容,直接使用的可以前往CUP Online Judge NG Docker Judger体验懒人部署的快感。

系统要求

  • Ubuntu 16.04 or above
  • X86_64 CPU
  • Node.js v10 or above

环境要求

  • 预先准备好数据文件夹

部署

  1. 拉取后台服务代码:
$ git clone https://github.com/ryanlee2014/CUP-Online-Judge-Judge-Daemon-Service.git judge-daemon
  1. 安装依赖
$ cd judge-daemon && npm install
  1. 编译
$ npm run build
  1. 拉取判题机代码
$ cd ../
$ git clone https://github.com/ryanlee2014/CUP-Online-Judge-Judger.git judger
  1. 运行安装脚本
$ cd judger && ./build.sh

对于CentOS用户,请自行安装脚本中给出的依赖

  1. 拷贝wsjudged到后台服务的目录下, 并添加执行权限
$ chmod +x wsjudged
$ cp wsjudged ../judge-daemon
  1. 填写数据库信息
$ cd /home/judge/etc
$ #edit judge.conf

7.1 judge.conf内容说明

OJ_HOST_NAME=//数据库地址
OJ_USER_NAME=//数据库账号
OJ_PASSWORD=//数据库密码
  1. 启动服务
$ # go to judge-daemon
$ npm start

后台程序将暴露5110端口和后端交互。


若出现端口冲突,请更改config.json文件中”port”字段为其他可用端口。

若未了解程序交互逻辑与判题机内部结构,请不要改动除第一个端口以外的端口。

你看这么长的部署过程多麻烦,坑还多,不如用docker-compose方便
所以想用的就会最上面去下docker版吧

既然这么麻烦,为什么不直接用docker版呢?

由于docker版不支持使用共享内存作为判题暂存空间,因此性能会有一定损失。

对判题速度及其敏感的用户建议用非docker版,否则就使用自行部署的版本

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇