官方文档:https://github.com/QingdaoU/OnlineJudgeDeploy/tree/2.0
我是用Ubuntu16.04 LTS搭的 ,当时在虚拟机上进行操作 , 搭建这个OJ之前 ,先在终端进行一些相关环境的配置!
一、下载一些软件、容器等
刚开始我直接复制上去, 报错了!(当时一脸懵逼)
这里可以拆开这些命令 , 一个一个的下载
sudo apt-get update // 更新 sudo apt-get install vim sudo apt-get install git sudo apt-get install curl sudo apt-get install python
sudo apt-get install docker-compose
接下来是下载docker容器:
进入到 root 模式 , 然后cd ..退到根目录 , 这里最好是用root模式进行操作 , 不然后docker的一些操作 , 可能会出现权限不足的问题
sudo apt-get install docker.io
"docker --version "能查看版本信息就成功了
下载好docker之后, 为docker换一个国内的源, 具体百度:docker换源
换好源了, 就是下载docker镜像 , 我这里是下ubuntu 的镜像 , 也还有centos 、redis等镜像
docker pull ubuntu // 为docker下载ubuntu镜像
如果下载镜像这里出现如下错误:
连接超时问题,就有可能是你的docker没有 换源
如果这里你没有进入root模式 ,还有可能出现一个权限不足的报错
下载好镜像之后 用命令:
docker images // 查看docker 的镜像
(我的电脑之前就有ubuntu 的镜像了, 所以我下载的是centos , Ubuntu的也是一个样的)
docker images 之后看到docker 的镜像信息
接下来是生成相应镜像的容器:
docker run centos /// 生成容器 , 如果是ubuntu的就: docker run ubuntu
如果到这一步没有问题的话 , 就可以看到docker 中容器情况了:
docker ps -a // 查看docker中的所有容器 docker ps // 查看当前正在运行的容器
相应的环境配置大功告成
接下来就是克隆项目:
git clone -b 2.0 https://github.com/QingdaoU/OnlineJudgeDeploy.git && cd OnlineJudgeDeploy
如果是这个样子 , 就说明克隆项目成功了 , 输入命令“ ls ” , 可以看到有个我们刚刚克隆的文件夹
如果这里有克隆错误 , 没成功的 , 可以去看一下git的原理, git的相关操作 , 我当时第一次克隆也没有成功, 第二次才成功 , 我也忘记我的报错了,但是问题不大 , 一下子就解决了
准备工作结束, 开始部署
首先我们要进入到克隆的文件夹(如果当前就在文件夹里的就忽略):
cd OnlineJudgeDeploy
部署:
docker-compose up -d // root模式命令 sudo -E docker-compose up -d // 非root模式
正在部署 , 距离成功只差时间
①:在部署的时候还有可能会出现之前的连接超时的问题 , 这就有可能是没有进入到 “ OnlineJudgeDeploy ”目录中 (我之前的部署操作的时候 , 不管怎么弄都不行 , 包括换源,换了好几份, 还是显示连接超时,然后我卡了两天, 都解决不了, 直接把docker卸载了(要卸干净), 然后重新下载 ,装镜像啥的, 之后行云流水, 部署成功, 我也不知道我的docker出了什么问题 )
②:还有可能的一种错误是端口占用问题 ,克隆项目中的文件默认配置的是80端口, 如果被占用的话, 就改一下端口 ,
这里有一份docker-compose.yml文件
vim docker-compose.yml
之前配置的是80端口, 我现在换成了90端口, 如果还被占用的话, 就多换几个
重新部署就OK了
可以看到90端口的部署了,完成了 , 然后打开谷歌 , 就可以看到你的OJ了
小白第一次写博客 , 如有问题之前请联系我