服務器折騰日記01【OJ搭建】
- 2019 年 11 月 8 日
- 筆記
版權聲明:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
本文鏈接:https://blog.csdn.net/shiliang97/article/details/102633845
服務器折騰日記01【OJ搭建】
涉及到OJ(hanxu051)
- 江南OJhttps://github.com/shi-yang/jnoj 都挺好的(就是我沒裝上)
- hustoj https://github.com/zhblue/hustoj 挺方便,一鍵部署但是不敢再動服務器。。怕壞了,而且界面UI有點上古。
- 青島oj https://github.com/QingdaoU/OnlineJudgeDeploy 界面好看,搭建方便,docker部署,端口默認80我也不咋會調哈~換成別的就好了。以後應該用就是用這個OJ
星期二晚上,可能是太閑了,想搭建一個oj,自己可以出題,培訓大一的同學可以用的online judje,我就在我的阿里雲學生機上面開始折騰。(hanxu051)
試了試用開源的jnoj(江南OJ) https://github.com/shi-yang/jnoj(hanxu051)
需要下載一些庫,用sudo apt-get install安裝,但是我阿里雲是centos,安裝要用yum,軟件倉庫貌似沒有那個,我就試着裝apt整半天挺費勁的,就放棄了 江南oj,改用了 學校算法訓練營 里大三學長clone的青島大學的 (hanxu051)OJ。 https://github.com/QingdaoU/OnlineJudgeDeploy(hanxu051)
使用docker一鍵部署。安裝docker時,我已經安裝過 jupyternotebook,導致衝突,卸載jupyter之後 卸載不幹凈,根據命令行提示又卸了一些亂七八糟的東西。(hanxu051)
docker安裝成功後,又缺少 docker-compose(可以一個項目同時使用 數據庫 php 。。。同時使用)一堆衝突,裝半天整上。之後終於部署了,出現一些php功能被關閉,查資料打開了 php 的函數。(hanxu051)
Warning: scandir() has been disabled for security reasons in
解決辦法: 編輯php.ini文件 disable_functions = scandir,passthru,exec,system,chroot,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,fsocket,fsockopen 去掉scandir保存並重起php-fpm即可。 php.ini 的位置:/usr/local/php/etc/php.ini 最後執行/etc/init.d/php-fpm restart重啟下
我也不會重啟。。。。就直接reboot了服務器(我太菜了)理所應當去學 Linux後面(hanxu051)
後面總算跑起來了。。。佔用了80端口。。。遇到的錯誤太多了,一個又一個的,我太想放棄了,因為我這個服務器里,還跑着我的博客,我想重裝系統直接撞docker,這樣可能就不會有這麼多破事了。。。。(hanxu051)
我就隨便在騰訊雲看了看,剛好十二點剛果。。。看到騰訊雲在搞雙十一的活動,趁機入了一個88塊錢買了一個 1m帶寬,2G運存,50G存儲的服務器(感覺和學生機一樣欸),我也沒買過學生機,過期了可以直接轉學生機。 最後買完 88一年,新用戶又送了4個月,88塊錢 16個月購入開始裝 OJ(hanxu051)
第二天早上,六點多就起來去實驗室裝OJ,一上騰訊雲發現,晚上那個活動竟然搶完了(感覺我真幸運哈~),由於昨天晚上整過,新的服務器沒有軟件的衝突,一路暢通,OJ就裝上了,裝上就能用嘿~~~~。(hanxu051)

由於這個直接佔用了80端口,kill了我的negix,我也沒啥經驗,又體驗了其他OJ(hanxu051)
我又裝了hustoj,這個好像更經典(界面挺老的。。。) https://github.com/zhblue/hustoj(hanxu051)
重置了Ubuntu系統,一鍵部署(hanxu051)
基於Ubuntu16.04安裝 首先安裝ubuntu16.04(推薦使用,php7速度杠杠的),然後用下面腳本快速安裝OJ:
wget https://raw.githubusercontent.com/zhblue/hustoj/master/trunk/install/install-ubuntu16+.sh sudo bash install-ubuntu16+.sh
(hanxu051)
一鍵部署,方便好使,都挺好。除了界面有點老。,但這個好像不能亂動了,也不讓裝寶塔面板了。。為了充分利用我的服務器,我怎麼能接受這樣的設置呢。。(hanxu051)
我最後又回到了江南OJ,這個直接在寶塔面板里直接克隆就行了,然後部署不影響其他項目,先把前後端安裝好之後,再配置判題姬,可能是我太菜了,判題姬沒裝好。。。他不評判我枯了。(hanxu051)
後面再想辦法吧。。。(hanxu051)
我又想干別的去了~~~(我真是想啥幹啥。。。哈)(hanxu051)