青島OJ(QingdaoU/OnlineJudge)的安裝(0)


原文鏈接:這里
0.前言

OJ(OnlineJudge)是在線判題系統,很多學校或者機構打比賽都有自己的OJ系統。QingdaoU這個OJ是最新開發的一個OJ系統,界面比較好

官方文檔:https://docs.onlinejudge.me/#/onlinejudge/guide/deploy

github: https://github.com/QingdaoU/OnlineJudge

官方DEMO: https://qduoj.com/

官方QQ群:496710125

本文環境:centos7.7 + 寶塔面板7.3

1.環境安裝

官方設置了一鍵安裝(docker下),centos(寶塔)安裝docker請點這。

但是需要一些程序

docker-compose(安裝這個需要pip)
vim
git
curl

我們使用寶塔面板后面三個都已經存在。只有docker-compose需要安裝,安裝docker-compose需要pip,所以我們想辦法先安裝pip。

centos下安裝pip,需要使用如下指令。

yum -y install epel-release
yum -y install python-pip

然后升級一下pip

pip install --upgrade pip

有了pip之后,我們就要按照docker-compose,我們輸入

pip install docker-compose

等待大概幾分鍾就安裝完畢了。但是安裝的過程中發現上面的指令可能會報錯,可能是源的問題,那么我們可以用下面的指令。

 pip install docker-compose -i https://pypi.douban.com/simple

輸入docker-compose version 查看版本信息。


2.一鍵安裝

在服務器上新建一個文件夾,用來存儲我們的OJ系統。我們在WWW文件下新建一個文件夾“QDOJ”

然后我們cd到QDOJ這個文件夾,在這個文件夾下輸入下面的指令。

git clone -b 2.0 https://github.com/QingdaoU/OnlineJudgeDeploy.git && cd OnlineJudgeDeploy

我們可以看到一鍵安裝的文件已經下載完了。

然后在輸入下面的指令

docker-compose up -d

開始拉取docker鏡像

如果pull的速度慢,考慮要換源,換源的方式在文章開頭的centos安裝docker里。經過實測,更換源之后的速度很快。


如果有下面報錯,說明端口被占用,有兩種方法解決。

for oj-backend Cannot start service oj-backend: driver failed programming external connectivity on endpoint oj-backend (4d304660a0329643bb3bf1e63519dff3dc65fe8bbbb00a9c5a38f0ebe4ac76c7): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use

第一種方法:把本機Centos 中的占用80端口的程序停掉

第二種就是修改docker-compose.yml文件,這種方法我們會在后面的文章中詳細解釋。

本文選取的是第一種方法。先停掉本機的占用80端口的程序,在寶塔中由於我安裝了nginx所以一直占用80端口,那么就先把nginx停掉。然后重啟docker中的oj-backend容器

我們訪問虛擬機的IP,看到一下界面表示成功。

3.后台登錄

我們登錄登錄后台( 你的IP地址/admin)

用戶名:root
密碼:rootroot

這樣就表示登錄成功了。但是還是有一些問題,比如是中文的,這些問題在下面幾篇文章中詳說。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM