创新实训(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 解决。

附数据库格式:

博客(公告)

博客评论

点赞

比赛

赛题

比赛注册选手

评测机

题目

提交记录

用户信息

posted @ 2024-05-31 11:13  wh_ZH  阅读(5)  评论(0编辑  收藏  举报