前期准备:

x64 ubuntu 镜像、vmware、ss账号

注意一定要有64位镜像!

ss不是必须的,不过没有的话就等着下载一晚上吧...

首先先装好ubuntu,我装的是ubuntu-16.04-desktop-amd64.iso。

然后先换个软件源

装docker

然后主机打开ss,注意勾选允许局域网连接。

然后看一下主机ip

把uoj的包下下来(https://github.com/vfleaking/uoj

设置docker的代理:https://docs.docker.com/engine/admin/systemd/#http-proxy

挂完代理就慢慢等吧...

第一步下好了之后,我们还需要下载两个jdk包放进去。

如果不用评测java就直接按错误信息扔两个空文件就行。

然后就开始安装了,出现了各种各样奇怪的信息...

之类的

终于出现了这一行字

那么<image-id>在我这里就是66e27a0dd05a。

然后启动就直接输进去就行了:

(记得sudo)

我们在虚拟机里编辑一下/etc/hosts:

在虚拟机里打开127.0.0.1:

然后我们配置一下端口映射:

vmware里编辑->虚拟网络编辑器

(上面这张图仅供示意,主机端口最好直接填80,另外还要转发3960)

虚拟机IP地址就是虚拟机的IP,ifconfig一下就可以找到,以子网IP开头的那个就是,要转发3690和80端口(后面发现的,svn传题要用)

那么局域网要访问的话,访问的人也要改hosts,把local_uoj.ac定向到实机ip(不是虚拟机)就可以了。

然后加超级管理员:

首先在docker那个窗里打开mysql:

mysql app_uoj233 -u root -p

默认密码是root。

超管就加好了。

然后传题需要装tortoisesvn,然后比如题目,新建题目之后点管理,就可以改题面了。传数据首先先要在管理者里面加上自己,然后数据页面有一个svn地址:

那么你就svn checkout一下这个地址(在文件管理器空白处右键),输入你的用户名和密码。这个密码每个用户是一样的(随机的),在数据库里的svn_password一列,上面那个图的svn密码就是ro2sRkzO97。

然后建一个叫1的文件夹,接下来的操作参考:https://vfleaking.github.io/uoj/problem/ 里“题目配置格式”。

然后右键svn commit,记得全选更改,然后点

如果没有锅就点检查一下标程和validator挂了没,如果没事就可以公开题目了。

创建比赛挺简单的。需要注意的是,超级管理员和比赛管理员不能参加比赛(实测),所以管理员如果想做比赛赛前可能要人工取消一下。

如果想改源码的话...看这里:https://vfleaking.github.io/uoj/dev/

最后更详细的文档可以戳:https://vfleaking.github.io/uoj/(如果虚拟机突然狗带了docker退出了这里也有解决办法)

Universal OJ开源群:590822951

虚拟机上装uoj的更多相关文章

  1. 刚在虚拟机上装的Linux系统,ifconfig后IP地址怎么成了127.0.0.1了

    之前在虚拟机上装了Linux系统,用了一段时间后想删除了重新装一下,然而装完以后ifconfig后,出现的是 [root@localhost ~]# ifconfig lo Link encap:Lo ...

  2. 解决宿主机不能访问虚拟机CentOS中的站点 | 更新CentOS防火墙设置开启80端口访问

    前阵子在虚拟机上装好了centos6.0,并配好了nginx+php+mysql,但是本机就是无法访问.一直就没去折腾了. 具体情况如下 1.本机能ping通虚拟机 2.虚拟机也能ping通本机 3. ...

  3. 解决问题:centos虚拟机安装好nginx,本机无法访问

    阵子在虚拟机上装好了centos5.3,并配好了nginx+php+mysql,但是本机就是无法访问.一直就没去折腾了.具体情况如下1.本机能ping通虚拟机2.虚拟机也能ping通本机3.虚拟机能访 ...

  4. ssh 连接ubuntu的虚拟机问题

    我在winxp的虚拟机上装了一个ubuntu9.04的系统,winxp的ip为10.118.62.157,ubuntu的ip为192.168.116.1 两个ip互相ping都是正常的,但是,我在wi ...

  5. 记录es在虚拟机的开启步骤

    最近开始接触elasticserach数据库,于是想在虚拟机上装一个练练手,装的时候可是费了好多时间,百度了许多教程,但是教程太多太乱,怕自己容易忘,所以记录一下,但是我主要记录是装好的es数据库如何 ...

  6. winSCP无法连接虚拟机Linux解决

    刚在虚拟机上装上Linux(Centos7)后使用winSCP建立文件共享发现连接超时,经过几个小时的查找发现Linux中没有eth0文件,这说明其网卡名不是eth0,在网上查过一些解决办法有的通过修 ...

  7. 虚拟机Ubuntu 18.04安装RabbitMQ 3.7.9

    Windows 10家庭中文版,VirtualBox,Ubuntu 18.04,Rabbitmq 3.7.9,Erlang/OTP 20 [erts-9.2], 在虚拟机上装好了Ubuntu,写了一个 ...

  8. 用visualbox虚拟机安装ubuntu

    用visualbox虚拟机安装ubuntu 哥的电脑原来要装双系统.结果电脑死了,磁盘格式化了.什么盘符又挺混乱.后来说用虚拟机装系统安全,又開始摸索. 我的电脑因之前的缘故,VMware软件用不了, ...

  9. 虚拟机中安装windows server 2008方法

    我们简单的介绍一下怎么在虚拟机上安装 windows server  2008系统. 工具/原料 已经安装好的虚拟机. windows server  2008 iso系统镜像 方法/步骤1虚拟机上虚 ...

随机推荐

  1. RPC远程过程调用学习之路(一):用最原始代码还原PRC框架

    RPC: Remote Procedure Call 远程过程调用,即业务的具体实现不是在自己系统中,需要从其他系统中进行调用实现,所以在系统间进行数据交互时经常使用. rpc的实现方式有很多,可以通 ...

  2. CRL快速开发框架开源完全转到Github

    CRL简介 CRL是一款面向对象的轻量级ORM框架,本着快速开发,使用简便的原则,设计为 无需关心数据库结构,CRL自动维护创建,即写即用(CRL内部有表结构检查机制,保证表结构一致性) 无需第三方工 ...

  3. 由objC运行时所想到的。。。

    objC语言不仅仅有着面向对象的特点(封装,继承和多态),也拥有类似脚本语言的灵活(运行时),这让objC有着很多奇特的功能-可在运行时添加给类或对象添加方法,甚至可以添加类方法,甚至可以动态创建类. ...

  4. objC与js通信实现--WebViewJavascriptBridge

    场景   在移动端开发中,最为流行的开发模式就是hybmid开发,在这种native和h5的杂糅下,既能在某些需求中保证足够的性能,也可以在某些列表详情的需求下采用h5的样式控制来丰富内容.但是在大型 ...

  5. Cesium原理篇:GroundPrimitive

    今天来看看GroundPrimitive,选择GroundPrimitive有三个目的:1 了解GroundPrimitive和Primitive的区别和关系 2 createGeometry的特殊处 ...

  6. 类型基础---CLR Via C#笔记一

    一.所有类型都是从System.Obejct派生 1.下面两个类型定义是完全一致的: class Employee{ ... } class Employee:System.Object{ ... } ...

  7. 从零自学Hadoop(20):HBase数据模型相关操作上

    阅读目录 序 介绍 命名空间 表 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 ...

  8. EntityFramework中的DbContext使用疑点说明

    1.DbContext怎么在Asp.mvc中使用? public class Repository { //实例化EF容器:有弊端.一个线程里可能会创建多个DbContext //DbContext ...

  9. C#获取硬盘序列号的问题求助

    具体问题是这样的:我用下面这段获取硬盘型信息的代码做成的exe文件,在机子上测试的时候,出现直接双击运行和用管理员身份运行结果不一样的情况,这个问题该怎么解决? public static Strin ...

  10. jquery获取dropdownlist的value和text值

    1.jquery //获取value值 $("#ddlSubmodel").val(); //获取text值 $("#ddlSubmodel").find(&q ...