Ubuntu14搭建配置青岛大学OJ系统

如题,部署青岛大学的开源OJ用于测试,可是根据他们在github提供的文档老是安装失败,我本身找到了合适办法解决了,因此记录一下。前端

环境是Ubuntu14.04-64bit,这套系统使用docker部署,总体是Python写的。python

1.安装docker-ce,最新版的docker安装变成了docker-ce,能够点这里参考docker官方文档linux

首先检查和删除旧版本的dockergit

sudo apt-get remove docker docker-engine docker.io

安装一些工具(update以前最好肯定本身的Ubuntu14安装源在国内,这样能够节省时间,最好是换成阿里云的源)github

sudo apt-get update && sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

添加官方秘钥web

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

添加apt安装配置docker

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

安装ubuntu

sudo apt-get update && sudo apt-get install docker-ce

安装完后你可能会遇到docker服务没法启动或者找不到文件之类的问题,是由于docker-ce变换了策略,docker 进程经过监听一个 Unix Socket 来替代 TCP 端口。在默认状况下,docker 的 Unix Socket属于root用户,固然其余用户可使用sudo方式来访问。由于这个缘由, docker 进程就一直是root用户运行的。因此用下边的方法把本身的用户名加到docker的用户组里边去,之后就不用sudo了:vim

sudo gpasswd -a username docker
sudo service docker restart

而后reboot你的主机。安全

2.安装必要的依赖

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

3.开始安装oj

sudo git clone -b 2.0 https://github.com/QingdaoU/OnlineJudgeDeploy.git && cd OnlineJudgeDeploy
docker-compose up -d

docker-compose 启动的时候报错 'module' object has on attribute 'connection'怎么办?

尝试运行 pip install --upgrade pip && pip install -U urllib3,而后再重试看看。若是还不行,就把pip安装的compose卸载,而后手动去官网下载compose进行安装,这时候应该就不会出现上边的报错了。

 

而后docker会自动的推送镜像,等待就行了,具体时间看网速。

4.后续:

安装过程当中自动建立了用户名为root密码为rootroot,及时修改密码以保证安全。

题目的导入是个问题,不光要在web上写,还要导入一个压缩包,具体作法看最后列出的第二个文档就行了。

 

后边我还会探索如何自定义这套OJ的前端。

 

具体的安装和配置文档参考青岛大学开源文档就好:

https://github.com/QingdaoU/OnlineJudge

https://docs.onlinejudge.me

https://www.zybuluo.com/virusdefender/note/171932

本文参考的其余文档:

https://blog.csdn.net/renhanchi/article/details/75578553

https://www.jianshu.com/p/0ebd1b5120f5

https://docs.docker.com/install/linux/docker-ce/ubuntu/

相关文章
相关标签/搜索