JXOJ(基于UOJ)部署日志
JXOJ部署日志
前些日子协助cyc、llf两位奆老部署了JXOJ,为方便日后维护我校OJ的同学,写篇日志做记录以日后查看。
一、准备:
在尝试了多个不同OJ之后,我们最终选择了Universal Online Judge 的这个社区版
我们使用的系统是此时较新的ubuntu-18.04-desktop-amd64 。
二、步骤:
安装过程基本上完全按照UOJ部署指北中的内容一步步进行,对于一个崭新的Ubuntu,更换aliyun软件源,在终端中执行:
sudo su
apt update
apt upgrade
apt install vim
apt install curl
apt install git
apt install docker.io
其中docker:"它是一个容器技术,暂且可以理解成虚拟机。"(引自UOJ部署指北)UOJ就是运行在其虚拟出的一个Ubuntu系统环境下。
接着便是在docker中安装UOJ。可以将社区版的源代码clone下来安装(然而没有必要这样做),例如:
git clone https://github.com/UniversalOJ/UOJ-System.git
更为便捷的方法是,直接下载docker提供的公共镜像,因为UOJ已经在docker的服务器上发布。
sudo docker pull universaloj/uoj-system:stable
然后就会开始下载。
下载下来是镜像,我们需要让docker创建一个新的虚拟机来运行UOJ。值得一提的是,运行的同时需要指出开放的端口,部署指北中的代码只开了两个,而为了方便管理数据,我们希望增加供Kodexplorer和PhpMyAdmin使用的端口。80端口用于访问网页端,3690是传题用的,剩下两个分别是Kodexplorer和PhpMyAdmin。完整命令是:
sudo docker run --name uoj -dit -p 80:80 -p 3690:3690 -p 1926:1926 -p 2333:2333 --cap-add SYS_PTRACE uoj
至此,UOJ已经默默地运行起来了。在局域网内任何一台计算机访问刚刚那台服务器的ip地址,就能访问UOJ网页端。管理员用户名为root,密码为uojuoj,可自行更改。安装过程也就结束了。
JXOJ(基于UOJ)部署日志的更多相关文章
- CentOS 6.7下利用Rsyslog+LogAnalyzer+MySQL部署日志服务器
一.简介 LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端.它提供了对日志的简单浏览.搜索.基本分析和一些图表报告的功能.数据可以从数据库或一般的syslog文本文件中获取 ...
- CentOS 6.5下利用Rsyslog+LogAnalyzer+MySQL部署日志服务器
一.简介 LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端.它提供了对日志的简单浏览.搜索.基本分析和一些图表报告的功能.数据可以从数据库或一般的syslog文本文件中获取 ...
- 基于hive的日志分析系统
转自 http://www.cppblog.com/koson/archive/2010/07/19/120773.html hive 简介 hive 是一个基于 ...
- 5.基于二进制部署kubernetes(k8s)集群
1 kubernetes组件 1.1 Kubernetes 集群图 官网集群架构图 1.2 组件及功能 1.2.1 控制组件(Control Plane Components) 控制组件对集群做出全局 ...
- ELK基于ElastAlert实现日志的微信报警
文章转载自:https://mp.weixin.qq.com/s/W9b28CFBEmxBPz5bGd1-hw 教程pdf文件下载地址 https://files.cnblogs.com/files/ ...
- [系统集成] 基于Kubernetes 部署 jenkins 并动态分配资源
基于kubernetes 部署 jenkins master 比较简单,难点是为 jenkins 动态分配资源.基于kubernetes 为 jenkins 动态分配资源需要实现下述功能: 资源分配: ...
- Mininet实验 OpenFlow1.3协议基于Mininet部署与验证
参照:OpenFlow1.3协议基于Mininet部署与验证 安装过程,参考原文. 实验 使用ifconfig查看本机IP地址:192.168.1.101 进入OpenDayLight界面,cd到bi ...
- 基于SQL的日志分析工具myselect
基本介绍 程序开发者常常要分析程序日志,包括自己打印的日志及使用的其他软件打印的日志,如php,nginx日志等,linux环境下分析日志有一些内置命令能够使用,如grep,sort,uniq,awk ...
- 基于Log4Net本地日志服务简单实现
背景 项目开发中,我们或多或少会使用诸如NLog,Log4Net,Kafka+ELK等等日志套件: 基于关注点分离原则,业务开发的时候不应该关注日志具体实现:并且后续能方便切换其他日志套件: 这里先实 ...
随机推荐
- MongoDB操作集
官网 https://www.mongodb.com/download-center#community 基本资料: http://www.runoob.com/mongodb/mongodb-int ...
- C# 字典Dictionary
Dictionary<TKey, TValue> 泛型类提供了从一组键到一组值的映射.通过键来检索值的速度是非常快的,接近于 O(1),这是因为 Dictionary<TKey, T ...
- JSP页面、包含
JSP页面概念: html称为静态页面,而与相对的JSP称为动态页面(一个特殊的servlet)二者的区别在于,html只能定义css,js.但是在JSP中除了html可以定义的文件外,还可以定义Ja ...
- egg.js异步请求数据
之前已经简单的使用egg-init初始化项目,并创建控制器controller和服务service 在实际项目中, service主要负责数据的请求,并处理(http请求) controll主要负责获 ...
- CentOS7系统 ansible自动化部署多台服务器部署
CentOS7系统 ansible自动化部署多台服务器部署 Ansible工作机制 从图中可以看出ansible分为以下几个部份: 1> Control Node:控制机器2> In ...
- oracle之数据恢复(delete误删)
ALTER TABLE TA_申请材料表 ENABLE row movement ; flashback table TA_申请材料表 to timestamp to_timestamp('2019- ...
- idea 2018.1 for mac破解激活方法---到2099
https://blog.csdn.net/weixin_41470864/article/details/81607169
- C++编译优化备忘
基于GCC测试:http://www.tutorialspoint.com/compile_cpp11_online.php const A& a=fun() 与 A a= fun() 1.方 ...
- symfony command
symfony 的command系统,有两部分构成:Application和command 1. Application是一个容器,负责对command进行管理. 2.command是每一个具体的命令 ...
- 发现一个新的注入 代码 eval
下面这句代码,就是一段恶意的代码,通过form POST 提交数据即可生成脚本文件. eval('?>' . file_get_contents('php://input'));