一道简单的Docker题
Posted mid2dog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一道简单的Docker题相关的知识,希望对你有一定的参考价值。
docker是什么?
我觉得大致可以理解为linux环境下的虚拟机(容器)
就跟windows环境下的vmware一样
在打中科大hackergame2020的时候发现有一道docker题
先复习下docker的相关命令:
这里!
然后开始做题
首先先配置好本地的docker环境,apt-get换成浙大源(经过测试这个源下载安装docker速度超快,吊打阿里清华源)
然后安装 docker
apt-get update
apt install docker-ce
首先需要将题目镜像加载到本地
docker pull 镜像名称
然后查看历史操作记录
docker history 镜像名称
发现删除flag.txt 的操作在第二行(第一行就是当前系统)
docker inspect 镜像名称
然后在一堆diff结尾的路径中找到第一行,也就是倒数第一层。
这个diff路径可以直接ls到,然后从中找到flag。
具体原理大概就是docker跟ps一样,每次修改就像加图层,我们可以从之前的图层里找到我们想要的东西。
如果想了解具体知识可以参考这篇
https://www.cnblogs.com/zejin2008/p/13460498.html
以上是关于一道简单的Docker题的主要内容,如果未能解决你的问题,请参考以下文章
luogu P3928 SAC E#1 - 一道简单题 Sequence2