创新实训(2)- 服务器上搭建环境
Universal OnlineJudge 部署流程
安装 docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo systemctl start docker # 启动 docker 服务
sudo docker --version # 检查 docker 是否正常安装
sudo docker pull universaloj/uoj-system
sudo docker run --name uoj -dit -p 80:80 --cap-add SYS_PTRACE universaloj/uoj-system
有如下维护命令:
docker start uoj # 启动 uoj 容器
docker stop uoj # 暂停 uoj 容器
docker restart uoj # 重启 uoj 容器
docker exec -it uoj /bin/bash # 进入 uoj 容器的终端
docker commit uoj uoj_back:tag # 将 uoj 容器保存为标签为 tag 的 uoj_back 镜像
docker ps -a # 查看所有的容器
docker images # 查看所有的镜像
docker rm uoj # 删除 uoj 容器(慎用)
docker rmi uoj_back:tag # 删除标签为 tag 的 uoj_back 镜像,
数据恢复命令:
docker commit uoj uoj_back:20170101 # 例行备份
docker commit uoj uoj_back:20170201 # 例行备份
docker commit uoj uoj_back:20170301 # 例行备份
# 3月15日,黑恶势力破坏了 uoj,uoj 容器已经无用,必须恢复
docker stop uoj
docker rm uoj # 删除uoj容器
docker run --name uoj -dit -p 80:80 --cap-add SYS_PTRACE uoj_back:20170301
# 创建新的 uoj 容器,使用3月1日的备份
部署过程中遇到了无法启动数据库的问题,手动 service mysql start 解决。
附数据库格式:
博客(公告)
博客评论
点赞
比赛
赛题
比赛注册选手
评测机
题目
提交记录
用户信息