Ubuntu16.04搭建QingdaoU(docker一键式部署)
QDUOJ已经开源到2.0版本了,下面的教程不再适用,仅做纪念吧!
这几天装什么Linux、开源OJ上瘾了。。。竟然没去刷题。。。嗯,做好记录就写题啦!
先上原始网站的图:
风格不错,很符合我的口味。
虽然它的github(https://github.com/QingdaoU/OnlineJudgeDeploy)说的不错,但是我觉得自己的步骤才是最好的。。
一、安装基础环境
1.安装工具(一条命令要装几个软件,大家记得每一个安装不报错才开始下一步)
sudo apt-get update
sudo apt-get install -y vim python-pip curl git
2.安装 docker(这个过程还是蛮久的,大家要耐心等待)
curl -sSL https://get.daocloud.io/docker | sh
3.安装 docker-compose
LC_CTYPE= pip install docker-compose
以上的安装如果有的命令不起作用,可以自己找新的安装方式。
二、安装文件
git clone https://github.com/QingdaoU/OnlineJudgeDeploy.git
cd OnlineJudgeDeploy
然后编辑 docker-compose.yml 文件,第28行为自定义的密码,比如rpc_token=123456。
三、启动服务
docker-compose up -d(如果不是root用户,请使用sudo -E docker-compose up -d,否则不会出传递当前的环境变量)
第二次启动也是使用该命令,但我觉得部署上服务器的话就一次启动长期使用了。
如果是本地启动OJ(用到localhost或者127.0.0.1),要先到文件 docker-compose.yml修改ports的端口名称。
四、网站管理
超级管理员用户名是root,默认密码是password@root,如果真正部署记得修改。
登录127.0.0.1/admin,添加一个判题服务器,地址为judger,端口为8080,密码是上面自定义的rpc_token。
修改custom_settings.py可以自定义站点信息。
由于该项目是封装在docker里的,所以有什么问题可以多看docker去解决。还有关于什么二次开发的,后面再写吧!
Ubuntu16.04搭建QingdaoU(docker一键式部署)的更多相关文章
- docker学习笔记(一)—— ubuntu16.04下安装docker
docker学习笔记(一)—— ubuntu16.04下安装docker 原创 2018年03月01日 14:53:00 标签: docker / ubuntu 1682 本文开发环境为Ubuntu ...
- Ubuntu16.04搭建OpenVPN
Ubuntu16.04搭建OpenVPN 2018年12月27日 15:50:59 VinQin 阅读数:21042 简介 如果在一个非信任网络下比如旅社或者咖啡店的WiFi网络下,想要通过你的智 ...
- Ubuntu16.04搭建LAMP开发环境
Ubuntu16.04搭建LAMP开发环境 虚拟机上安装好Ubuntu16.04后,是一台空白的Ubuntu.我的目的是搭建LAMP环境,顺便搭一个Python Django环境. 基本设置 1.配置 ...
- Ubuntu16.04下Mongodb官网卸载部署步骤(图文详解)(博主推荐)
不多说,直接上干货! 前期博客 Ubuntu16.04下Mongodb官网安装部署步骤(图文详解)(博主推荐) https://docs.mongodb.com/manual/tutorial/ins ...
- Rancher2.x 一键式部署 Prometheus + Grafana 监控 Kubernetes 集群
目录 1.Prometheus & Grafana 介绍 2.环境.软件准备 3.Rancher 2.x 应用商店 4.一键式部署 Prometheus 5.验证 Prometheus + G ...
- Harbor 企业级私有仓库 Ubuntu16.04 搭建及使用
一.Harbor简介 1.1.什么是Harbor 几个VMware中国的人搞了一个容器镜像仓库.Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器. 1.2.Harbor架 ...
- Ubuntu 16.04+.Net Core+Docker+Uginx安装部署
前言 最近公司的项目打算移植到.Net Core平台,所以调研了一下.Net Core在Linux下的安装部署.本篇文章会一步步的描述从安装到配置到部署的全部过程.在文章的结构和内容里,笔者借鉴了很多 ...
- Docker - 在Ubuntu16.04中安装Docker CE
Get Docker for Ubuntu Check system version root@Ubuntu16:~# uname -a Linux Ubuntu16 4.8.0-36-generic ...
- ubuntu16.04搭建ftp服务器
因为习惯了vs进行开发,所以对于Linux的代码编辑开发都在vs里面进行,通常我们都是ssh远程登录到Linux,使用ftp或者sftp共享Linux目录里面的文件方便对文件的共享,这里介绍一下在ub ...
随机推荐
- html5 简介
html5基于html.html dom.xhtml的新版本. 为html5建立的一些新规则: 基于html.dom.xhtml和javascript: 减少对外部插件的需求,比如flash: 更多取 ...
- CAP定理与BASE理论
1. CAP定理 C:Consistency,一致性 A:Availability,可用性 P:Partition tolerance,分区容错性 CAP定理,指的是在一个分布式系统中,一致性.可用性 ...
- servlet生成验证码代码
package forward; import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt ...
- 如何停止处于stopping状态的windows服务
工作中有时需要启动和停止windows service,有时候会出现服务处于stopping或者starting的状态,但是,在services界面中,start service/stop servi ...
- codeforces387B
George and Round CodeForces - 387B George decided to prepare a Codesecrof round, so he has prepared ...
- 工作中经常用到github上优秀、实用、轻量级、无依赖的插件和库
原文收录在我的 GitHub博客 (https://github.com/jawil/blog) ,喜欢的可以关注最新动态,大家一起多交流学习,共同进步,以学习者的身份写博客,记录点滴. 按照格式推荐 ...
- BZOJ1419Red is good——概率DP
题目描述 桌面上有R张红牌和B张黑牌,随机打乱顺序后放在桌面上,开始一张一张地翻牌,翻到红牌得到1美元,黑牌则付 出1美元.可以随时停止翻牌,在最优策略下平均能得到多少钱. 输入 一行输入两个数R,B ...
- easyui webapi
今天算是踩雷了.... 先说一下,由于项目需要,我目前开发PO模块, 由于需要提供手机端,所以我在mvc项目中创建了 webapi.提供手机端调用. 然后我就考虑,easyui也使用webapi来提 ...
- scp 的用法
scp用于在linux下远程拷贝文件, 与rsync相比,scp不占资源,不会提高多少系统负荷,虽然 rsync比scp会快一点,但当小文件众多的情况下,rsync会导致硬盘I/O非常高,而scp基本 ...
- pip常用命令、配置pip源
1.查找软件 # pip search Package 2.安装软件 # pip install Package # pip install -r requirements.txt 3.更新软件 # ...