[华为云Ubuntu18.04]青岛OJ搭建

华为云服务下安装青岛OJ

安装

个人使用的是华为云Ubuntu18.04 ,由于pip版本较老,需要先更新一下。

  1. 获得root权限

    sudo passwd root   #然后输入密码
    su root
    
  2. 更新pip

    pip install --upgrade pip
    
  3. 更换源

    sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak #备份源文件
    sudo vim /etc/apt/sources.list #将里面的内容随便用下面一个代替
    ##163的加速源
    deb http://mirrors.163.com/ubuntu/ xenial main restricted universe multiverse
    deb http://mirrors.163.com/ubuntu/ xenial-security main restricted universe multiverse
    deb http://mirrors.163.com/ubuntu/ xenial-updates main restricted universe multiverse
    deb http://mirrors.163.com/ubuntu/ xenial-backports main restricted universe multiverse
    #deb http://mirrors.163.com/ubuntu/ xenial-proposed main restricted universe multiverse
    #deb-src http://mirrors.163.com/ubuntu/ xenial main restricted universe multiverse
    #deb-src http://mirrors.163.com/ubuntu/ xenial-security main restricted universe multiverse
    #deb-src http://mirrors.163.com/ubuntu/ xenial-updates main restricted universe multiverse
    #deb-src http://mirrors.163.com/ubuntu/ xenial-proposed main restricted universe multiverse
    #deb-src http://mirrors.163.com/ubuntu/ xenial-backports main restricted universe multiverse
    ## 阿里云加速源
    deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
    #deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
    #deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
    #deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
    #deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
    #deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
    #deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
    ## 腾讯加速源
    deb http://mirrors.cloud.tencent.com/ubuntu/ xenial main restricted universe multiverse
    deb http://mirrors.cloud.tencent.com/ubuntu/ xenial-security main restricted universe multiverse
    deb http://mirrors.cloud.tencent.com/ubuntu/ xenial-updates main restricted universe multiverse
    #deb http://mirrors.cloud.tencent.com/ubuntu/ xenial-proposed main restricted universe multiverse
    #deb http://mirrors.cloud.tencent.com/ubuntu/ xenial-backports main restricted universe multiverse
    deb-src http://mirrors.cloud.tencent.com/ubuntu/ xenial main restricted universe multiverse
    deb-src http://mirrors.cloud.tencent.com/ubuntu/ xenial-security main restricted universe multiverse
    deb-src http://mirrors.cloud.tencent.com/ubuntu/ xenial-updates main restricted universe multiverse
    #deb-src http://mirrors.cloud.tencent.com/ubuntu/ xenial-proposed main restricted universe multiverse
    #deb-src http://mirrors.cloud.tencent.com/ubuntu/ xenial-backports main restricted universe multiverse
    
  4. 更新源

    sudo apt-get update  #更新源
    
  5. 更换pip源
    pip国内的一些镜像
      阿里云 http://mirrors.aliyun.com/pypi/simple/
      中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
      豆瓣(douban) http://pypi.douban.com/simple/
      清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
      中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/
    修改 ~/.pip/pip.conf (没有就创建一个), 内容如下:

    [global]
    index-url = https://pypi.tuna.tsinghua.edu.cn/simple
    
  6. 安装docker

    apt install docker.io
    
  7. 安装依赖

    sudo apt-get update && sudo apt-get install -y vim python-pip curl git
    pip install docker-compose
    
  8. 安装OJ
    请选择磁盘空间富余的位置,运行下面的命令

    git clone -b 2.0 https://github.com/QingdaoU/OnlineJudgeDeploy.git && cd OnlineJudgeDeploy
    
  9. 启动运行

    docker-compose up -d
    
  10. 查看是否成功

    docker ps -a
    

    当看到所有的容器的状态没有 unhealthy 或 Exited (x) xxx 就代表 OJ 已经启动成功。

根据网速情况,大约5到30分钟就可以自动搭建完成,全程无需人工干预。

使用

通过浏览器访问服务器的 HTTP 80 端口或者 HTTPS 443 端口,就可以开始使用了。后台管理路径为/admin, 安装过程中自动添加的超级管理员用户名为 root,密码为 rootroot,请务必及时修改密码。
不要忘记阅读文档 https://docs.onlinejudge.me/#/

题库

免费下载题的网址:http://loj.ac
可以购买题的网址:http://tk.hustoj.com/

管理

可以查看docker相关操作手册

docker ps  #显示所有的容器
docker stop name
docker start name

docker ps # 查看所有正在运行容器
docker stop containerId # containerId 是容器的ID

docker ps -a # 查看所有容器
docker ps -a -q # 查看所有容器ID

docker stop $(docker ps -a -q) #  stop停止所有容器
docker  rm $(docker ps -a -q) #   remove删除所有容器

sudo /etc/init.d/nginx stop #停止nginx
#强制停止
sudo ps -ef | grep nginx  # 查询nginx PID 此处为28444
#sudo netstat -a | grep 28444
sudo kill -quit 28444 #关闭nginx

sudo /etc/init.d/nginx start #启动ngnix

参考链接

更换源:https://blog.csdn.net/nuoyanli/article/details/99689047?utm_source=app&tdsourcetag=s_pctim_aiomsg
安装OJ:https://github.com/QingdaoU/OnlineJudgeDeploy/tree/2.0
更换pip:https://blog.csdn.net/yuzaipiaofei/article/details/80891108

发布了27 篇原创文章 · 获赞 13 · 访问量 1711

猜你喜欢

转载自blog.csdn.net/weixin_43855330/article/details/103001539