源码地址为:https://github.com/QingdaoU/OnlineJudge

可参考的文档为:https://github.com/QingdaoU/OnlineJudgeDeploy/tree/2.0

我的虚拟机上之前没有安装任何东西,就是依靠下面命令完成搭建青岛OJ

一、安装所依赖的环境

sudo apt-get update && sudo apt-get install -y vim python-pip curl git

sudo apt-get install docker-compose

二、使用Git克隆项目并完成部署

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

sudo docker-compose up -d(root用户使用该命令)或sudo -E docker-compose up -d(非root用户使用该命令)

/*
我是用的 sudo docker-compose up -d 这个命令
*/

有可能虚拟机之前并没有安装过git这个命令,我们可以通过下面命令安装

sudo apt-get install git
//或者
sudo apt install git

三、出现问题

1、

使用docker时报错“net/http: TLS handshake timeout”

2、

Ubuntu中Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend)问题的解决

3、

遇到第1个问题要修改Ubuntu文件内容,但是可能会涉及权限不够问题,这个时候一般就要在命令行下用vi命令修改文件内容

vi、wc、gzip、bzip2、tar、yum安装、dpek、用户信息操作等命令

4、

错误信息:ERROR: Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running?

解决办法:
docker-compose up -d(root用户使用)
非root执行会出现这个异常

非root应该执行这条命令
sudo -E docker-compose up -d

如果一直提示这个问题可以重启虚拟机试试。。。我就是这样试过的。。。

5、

错误信息:ERROR: Version in "./docker-compose.yml" is unsupported. You might be seeing this error because you're using the wrong Compose file version. Either specify a version of "2" (or "2.0") and place your service definitions under the `services` key, or omit the `version` key and place your service definitions at the root of the file to use version 1.
For more on the Compose file format versions, see https://docs.docker.com/compose/compose-file/

解决办法:修改docker-compose.yml中的version由3改为2

四、登录OJ

用户名和密码分别是:root和rootroot

浏览器默认打开为:http://127.0.0.1

回送地址:127.0.0.1。 也是本机地址,等效于localhost或本机IP。一般用于测试使用。例如:ping 127.0.0.1来测试本机TCP/IP是否正常。

五、在自己主机访问这个虚拟机上的OJ

我的虚拟器版本是:VMware Workstation 15 Player

好多人处理这个问题都是要设置网络编辑器网络适配器

我搜了半天有人说Player是没有网络编辑器的

谁能理解我此时内心的痛。。。。。。(此处略去一万字)

我给找了几个看起来还可以的博客(都是解决   “这个让自己主机访问这个虚拟机上的OJ”   这个问题的)

https://blog.csdn.net/qq_17534301/article/details/80925503

https://jingyan.baidu.com/article/46650658e1cc84f549e5f806.html

Ubuntu上查看ip地址用

ifconfig -a

如果没有安装ifconfig这个命令的话会提示你安装哪个东西,你照着安装就可以了

解释:

ens32 表示第一块网卡

inet addr 用来表示网卡的IP地址,此网卡的 IP地址是192.168.150.131

更多解释看下面这个链接

https://blog.csdn.net/dodod2012/article/details/80422729

总的来说我还是没有解决这个问题,等我解决之后我会更新博客的。。。

在Ubuntu虚拟机上搭建青岛OJ的更多相关文章

  1. win7的centos虚拟机上搭建mysql5.6服务

    1 安装包下载 mysql5.6下载地址: http://dev.mysql.com/downloads/mysql/ 这里选择linux版本: navicat11破解版的下载地址: http://d ...

  2. ubuntu物理机上搭建Kubernetes集群 -- 准备

    准备工作 1.kubernetes架构 2.三台ubuntu主机: 操作系统:ubuntu-16.04.1-server-amd64 docker: 1.安装 使用命令 sudo apt-get in ...

  3. 用Filezilla往ubuntu虚拟机上传文件

    也许不用这么复杂,但就这么干了 1.安卓ubuntu虚拟机 2.虚拟机安装ssh服务:sudo apt-get openssh-server 3.虚拟机新建目录test 4.修改test文件夹的访问权 ...

  4. Windows Azure上的Odoo(OpenERP)-2.在Ubuntu虚拟机上部署Odoo(OpenERP)

    创建虚拟机的步骤在这里就不再赘述了,请参考上一篇博文. 首先用下述命令将Ubuntu系统进行更新: 1. sudo apt-get update 2. sudo apt-get upgrade 3. ...

  5. 在Ubuntu虚拟机上安装DVWA

    学习资料来源:https://www.neddos.tech/?p=107 最后更新时间: 190122·17:41 1> 什么是DVWA(Damn Vulnerable Web Applica ...

  6. 在虚拟机上搭建物理机可访问的web服务(IIS)

    0x0 前言 安装webug4.0的时候突发奇想,想学下如何在虚拟机里搭建网站,然后让主机像访问互联网的网站一样访问虚拟机的网站,为以后渗透测试搭建环境做准备 0x1 虚拟机安装win2003[以防万 ...

  7. centOS7虚拟机上搭建kvm虚拟平台

    平台:win10+vmware, vmware中安装centOS7 1).  检测硬件是否支持虚拟化 # egrep '(vmx|svm)' --color=always /proc/cpuinfo ...

  8. ubuntu 虚拟机上的 django 服务,在外部Windows系统上无法访问

    背景介绍 今天尝试着写了一个最简单的django 服务程序,使用虚拟机(Ubuntu16.02 LTS)上的浏览器访问程序没有问题.但是在物理机器上(win10 Home) 就出现错误 解决方法 在 ...

  9. ubuntu物理机上搭建Kubernetes集群 -- minion 配置

    1. flannel配置 下载二进制文件 https://github.com/coreos/flannel/releases 版本:flannel-v0.7.0-linux-amd64.tar.gz ...

随机推荐

  1. Linux复制某个目录下结构

    Linux复制某个目录下结构 ​结合tree命令把当前目录下的文件夹路径存储到document.txt文件,然后再使用mkdir命令把document.txt文件下的目录输入创建: tree -fid ...

  2. C#数组的 Length 和 Count()

    C#数组的 Length 和 Count() C# 数组中 Length 表示数组项的个数,是个属性.而 Count() 也是表示项的个数,是个方法,它的值和 Length 一样.但实际上严格地说, ...

  3. LeetCode965. 单值二叉树

    题目 1 class Solution { 2 public: 3 int flag = 0; 4 bool isUnivalTree(TreeNode* root){ 5 isUnivalTree1 ...

  4. CTFshow-萌新赛杂项_劝退警告

    下载附件 https://www.lanzous.com/i9wocah 下载后得到一个劝退警告.zip 解压得到一张gif图片 使用binwalk分析发现包含zip 于是拿到了一个压缩包 打开后发现 ...

  5. 使用Python对MySQL数据库插入二十万条数据

    1.当我们测试的时候需要大量的数据的时候,往往需要我们自己造数据,一条一条的加是不现实的,这时候就需要使用脚本来批量生成数据了. import pymysql import random import ...

  6. (Oracle)误删oracle表结构恢复

    在操作数据库时,我们常常会不小心把表结构删除了.有时候建表很麻烦大到100多个字段,而又找不到当初的建表语句.其实这时候不用担心,oracle和咱们widows一样,他也有个回收站,只要你没有清除回收 ...

  7. 腾讯libco协程原理

    https://blog.csdn.net/GreyBtfly/article/details/83688420 堆栈 https://blog.csdn.net/lqt641/article/det ...

  8. 20200927gryz校赛心得

    今天gyh学长给我们办了一场校内模拟赛,特地跑来记录一下心得 昨天晚上问了一下lkp学长,听说题目不卡常,不毒瘤,因此我在考试前20分钟仍在若无其事的练习着刚学的强连通分量,丝毫不慌 结果虽然rank ...

  9. Codeforces 1220D 思维 数学 二分图基础

    原题链接 题意 我们有一个含多个正整数的集合B,然后我们将所有的整数,也就是Z集合内所有元素,都当做顶点 两个整数 \(i , j\) 能建立无向边,当且仅当 \(|i - j|\) 这个数属于B集合 ...

  10. Zookeeper语法

    ZooKeeper 是一个典型的分布式数据一致性解决方案,分布式应用程序可以基于 ZooKeeper 实现诸如数据发布/订阅.负载均衡.命名服务.分布式协调/通知.集群管理.Master 选举.分布式 ...