在虚拟机中搭建qduoj(二)——安装OJ

时间:2021-02-10 11:51:41

在上一章中,我们已经做好了准备工作,现在,正式开始搭建OJ。

可以先看看官方文档:

https://github.com/QingdaoU/OnlineJudgeDeploy/tree/2.0

运行putty连接到虚拟机后,

1、 更换软件源为阿里源:

# sudo apt-get install vim
# sudo mv /etc/apt/sources.list /etc/apt/sources_init.list
# sudo vim /etc/apt/sources.list

复制以下内容,在putty中按下insert键后,点击右键粘贴:

deb http://mirrors.aliyun.com/ubuntu/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe

保存并更新:

# :wq
# sudo apt-get update

2、 通过ssh连接虚拟机,安装一些必要依赖:

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

3、 安装docker:

# curl -sSL https://get.daocloud.io/docker | sh

修改docker镜像地址,避免下载镜像超时:

# curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://91c0cc1e.m.daocloud.io
# sudo systemctl restart docker.service

若显示如下信息则安装成功:

在虚拟机中搭建qduoj(二)——安装OJ

4、 拉取OJ安装脚本:

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

5、 安装:

# sudo -E docker-compose up -d

这里会报错:

在虚拟机中搭建qduoj(二)——安装OJ

有两种解决方法:

a、修改docker-compose.yml中的version字段;
b、升级docker-compose;

这里我们直接编辑docker-compose.yml,修改version为2:

# vim docker-compose.yml

在虚拟机中搭建qduoj(二)——安装OJ

接着:

# :wq

重新安装:

# sudo -E docker-compose up -d

安装过程约20分钟;

6、 测试:

列出所有容器:

# sudo docker ps -a

若看到以下信息则安装成功:

在虚拟机中搭建qduoj(二)——安装OJ

浏览器直接访问虚拟机ip:

在虚拟机中搭建qduoj(二)——安装OJ

本篇文章就到这里,若有疑问,请在评论区讨论~