0x01 docker常用命令
1.拉取镜像。
docker pull [image]
2.查看docker当前镜像。
docker image ls 或 docker images
3.新建一个docker容器,并映射端口号。
docker run -d -p [host port]:[docker port] [image]
4.查看运行中的docker容器。
docker ps -a
5.进入一个docker容器。
docker exec -it [container id] bash
6.拷贝本地文件到docker。
docker cp [本地路径] [container id]:[container 路径]
7.启动/停止一个docker容器。
docker stop [container id]
docker start [container id]
8.删除一个docker容器。
(注意:需要先把容器停止才可以删除。)
docker rm [container id]
9.删除一个docker镜像
(注意:在镜像对应的容器后才可以删除镜像ID。)
docker rmi [image id]
0x02 使用docker搭建一道简单的ctf题目
1.搜索lamp环境的docker镜像。
docker search lamp
2.拉取“tutum/lamp”镜像。
docker pull tutum/lamp
3.拉取完成以后,查看本地docker镜像。
docker images
4.新建一个docker容器。
docker run -d -p 100:80 -p 3307:3306 tutum/lamp
-d //容器后台运行。
-p //指定映射端口。
5.查看系统中运行的docker容器。
docker ps -a
6.使用浏览器访问一下主页,查看映射是否正常。
7.将ctf题目源码拷贝到container的主目录中。
docker cp sqli1/ 96630df2cbdf:/var/www/html/
8.进入docker container。
docker exec -it 96630df2cbdf bash
-i //让容器的标准输入保持打开。
-t //让docker分配一个伪终端并绑定到容器的标准输出上。
9.进入容器中的数据库,创建好ctf题目需要的数据库、数据表等等。
(数据库密码为空)
10.到这里,这个ctf题目就搭建好了,我们访问一下。
11.构造万能密码。成功得到flag。