搜索镜像
docker search xxx
docker search --filter=STARS=1000 #过滤,指定搜索stars大于1000的镜像
search指令可以搜索指定名称或者仓库的镜像的信息。
- STARS: 镜像的stars—越高越受欢迎,
- OFFICIAL: 是否是官方提供的
- AUTOMATED: 是不是自动化的
拉取镜像
docker pull xxx
docker pull xxx:tag #指定版本
把指定镜像拉到本地仓库,默认为拉取最新版本。可以通过[镜像:版本号]的形式指定对应版本号的镜像下载,例如:docker pull mysql:5.6.50
查看镜像
docker images || docker images -a #查看镜像所有信息
docker images -aq #查看镜像id
- REPOSITORY: 镜像仓库名
- TAG: 镜像标签
- IMAGE ID: 镜像id
- CREATED: 镜像创建时间
- SIZE: 镜像大小
生成容器
docker run xxx #指定xxx镜像生成容器
docker run -p 8080:8080 -d xxx #容器内部8080端口映射到本地8080端口,并守护进程后台运行
-p:容器内部端口绑定到指定的主机端口
-P:容器内部端口随机映射到主机的端口
-t:提供终端输入
-i:提供交互
-d:容器在后台运行
查看镜像状态
docker ps #查看正在运行中的的容器
docker ps -a #查看所有容器
docker ps -q #看正在运行中的的容器:仅列出编号
停止容器
docker stop xxx #指定编号
运行容器
docker start XXX #指定编号
重启容器
docker restart xxx #指定编号
删除容器
docker rm xxxxxxxxxx # 删除指定容器
docker rm -f xxxxxxxxxx # 强制删除运行中的容器
docker rm -f $(docker ps -aq) # 迭代删除全部的容器
进入容器的bash
docker exec -it xxxxx /bin/bash # 进入到指定容器内部进行修改 开启一个新的终端
exit #退出bash
拷贝文件
cp ./flag xx:/var/www/html/flag #将当前目录的flag拷贝到指定为xx id的容器/var/www/html/flag中
cp xx:/var/www/html/flag .flag #将指定为xx id的容器/var/www/html下的flag文件拷贝到当前目录flag文件中
docker-compose安装
curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
之后就是联动vulhub一键搭环境。
vulhub一键搭漏洞环境
#首先进入对应漏洞环境的文件夹
Docker-compose up -d #根据docker-compose.yml自动拉取容器并启动。
tomcat8的docker-compose.yml:
version: '2'
services:
tomcat:
image: vulhub/tomcat:8.0
volumes:
- ./tomcat-users.xml:/usr/local/tomcat/conf/tomcat-users.xml
- ./context.xml:/usr/local/tomcat/webapps/manager/META-INF/context.xml
- ./context.xml:/usr/local/tomcat/webapps/host-manager/META-INF/context.xml
ports:
- "8080:8080"