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

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

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

一、安装所依赖的环境

  1. sudo apt-get update && sudo apt-get install -y vim python-pip curl git
  2.  
  3. sudo apt-get install docker-compose

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

  1. git clone -b 2.0 https://github.com/QingdaoU/OnlineJudgeDeploy.git && cd OnlineJudgeDeploy
  2.  
  3. sudo docker-compose up -d(root用户使用该命令)或sudo -E docker-compose up -d(非root用户使用该命令)
  4.  
  5. /*
  6. 我是用的 sudo docker-compose up -d 这个命令
  7. */

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

  1. sudo apt-get install git
  2. //或者
  3. 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地址用

  1. 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. 【JS学习】for-in与for-of

    前言:本博客系列为学习后盾人js教程过程中的记录与产出,如果对你有帮助,欢迎关注,点赞,分享.不足之处也欢迎指正,作者会积极思考与改正. 总述: 名称 遍历 适用 for-in 索引 主要建议白能力对 ...

  2. Python绘制雷达图(俗称六芒星)

    原文链接:https://blog.csdn.net/Just_youHG/article/details/83904618 背景 <Python数据分析与挖掘实战> 案例2–航空公司客户 ...

  3. 【Linux】nohup和&的区别

    同样都是后台执行进程,但是nohup和&有什么区别呢? & 是指后台运行: nohup 的功能和& 之间的功能并不相同. 其中,nohup 可以使得命令永远运行下去和用户终端没 ...

  4. pandas 写csv 操作

    pandas 写csv 操作 def show_history(self): df = pd.DataFrame() df['Time'] = pd.Series(self.time_hist) df ...

  5. ctfhub技能树—彩蛋

    彩蛋题建议大家首先自己动手去找一找 做 好 准 备 后 再 看 下 文 !           1.首页 使用域名查询工具查询子域名 2.公众号 此题关注ctfhub公众号即可拿到,不过多赘述. 3. ...

  6. 避免用using包装DbContext【翻译】

    EF和EF Core 的DbContext类实现IDisposable接口.因此,很多最佳编程实践中都建议你将它们放在一个using()块中.不幸的是,至少在Web应用程序中,这样做通常不是一个好主意 ...

  7. 让 Mongoose 不再重复链接数据库(如何正确连接以解决升级后的报错)

    升级了 Mongoose 后,发现项目打不开了.报错: MongooseError: You can not `mongoose.connect()` multiple times while con ...

  8. 阿姆达尔定律 Amdahl's law

    Amdahl's law - Wikipedia https://en.wikipedia.org/wiki/Amdahl%27s_law 阿姆达尔定律(英语:Amdahl's law,Amdahl' ...

  9. Before you launch a goroutine, know when it will stop The Zen of Go

    The Zen of Go https://the-zen-of-go.netlify.app/ Ten engineering values for writing simple, readable ...

  10. 中央事件总线 事件驱动架构(EDA) 解析事件总线的4种实现方式

    事件驱动架构(EDA)https://mp.weixin.qq.com/s/nA8XFD2Rx_7qA_LxltGGHw https://mp.weixin.qq.com/s/cD3auglgKzOb ...