Ubuntu16.04搭建QingdaoU(docker一键式部署)

时间:2022-07-25 06:28:43

QDUOJ已经开源到2.0版本了,下面的教程不再适用,仅做纪念吧!

 

这几天装什么Linux、开源OJ上瘾了。。。竟然没去刷题。。。嗯,做好记录就写题啦!

先上原始网站的图:

Ubuntu16.04搭建QingdaoU(docker一键式部署)

Ubuntu16.04搭建QingdaoU(docker一键式部署)

风格不错,很符合我的口味。

虽然它的github(https://github.com/QingdaoU/OnlineJudgeDeploy)说的不错,但是我觉得自己的步骤才是最好的。。

一、安装基础环境

1.安装工具(一条命令要装几个软件,大家记得每一个安装不报错才开始下一步)

sudo apt-get update

sudo apt-get install -y vim python-pip curl git

2.安装 docker(这个过程还是蛮久的,大家要耐心等待)

curl -sSL https://get.daocloud.io/docker | sh

3.安装 docker-compose

LC_CTYPE= pip install docker-compose

 

以上的安装如果有的命令不起作用,可以自己找新的安装方式。

二、安装文件

git clone https://github.com/QingdaoU/OnlineJudgeDeploy.git

cd OnlineJudgeDeploy

 

然后编辑 docker-compose.yml 文件,第28行为自定义的密码,比如rpc_token=123456。

三、启动服务

docker-compose up -d(如果不是root用户,请使用sudo -E docker-compose up -d,否则不会出传递当前的环境变量)

第二次启动也是使用该命令,但我觉得部署上服务器的话就一次启动长期使用了。

如果是本地启动OJ(用到localhost或者127.0.0.1),要先到文件 docker-compose.yml修改ports的端口名称。

四、网站管理

超级管理员用户名是root,默认密码是password@root,如果真正部署记得修改。

登录127.0.0.1/admin,添加一个判题服务器,地址为judger,端口为8080,密码是上面自定义的rpc_token。

修改custom_settings.py可以自定义站点信息。

 

 

由于该项目是封装在docker里的,所以有什么问题可以多看docker去解决。还有关于什么二次开发的,后面再写吧!