服务器折腾日记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安***r> 首先安装ubuntu16.04(推荐使用,php7速度杠杠的),然后用下面脚本快速安装OJ:
wget https://raw.githubusercontent.com/zhblue/hustoj/master/trunk/install/install-ubuntu16+.sh sudo bash install-ubuntu16+.sh
https://www.youtube.com/watch?v=nlhmfZqyHnA(hanxu051)
一键部署,方便好使,都挺好。除了界面有点老。,但这个好像不能乱动了,也不让装宝塔面板了。。为了充分利用我的服务器,我怎么能接受这样的设置呢。。(hanxu051)
我最后又回到了江南OJ,这个直接在宝塔面板里直接克隆就行了,然后部署不影响其他项目,先把前后端安装好之后,再配置判题姬,可能是我太菜了,判题姬没装好。。。他不评判我枯了。(hanxu051)
后面再想办法吧。。。(hanxu051)
我又想干别的去了~~~(我真是想啥干啥。。。哈)(hanxu051)