Docker入门以及漏洞环境搭建(10.23 第二十五天)
Docker:开源的应用程序容器引擎,使用Go语言。借助于docker打包的应用程序,将这些应用程序 包含在容器里面,在容器中实现虚拟化,容器使用的是沙箱机制,相互独立,占用资源非常少。
Docker三个概念:
镜像:image,docker镜像是一个只读的模板,比如我们在镜像中包含完整的操作系统,在操作系统中可以安装LAMP环境,镜像可以创建容器。
容器:container,docker利用容器运行程序,容器是镜像中创建运行的实例,容器可以运行、关闭、删除的。
仓库:repository,集中放镜像的地方,每个仓库中包含了多个镜像,可以私有可以公开,最大的仓库是dockerhub
docker的安装:
(1)更新源安装docker
curl -s https://get.docker.com
sh apt install docker.io
apt-get install docker
添加加速器:
编辑配置文件:vim /etc/docker/daemon.json 替换成网上可用的加速器
https://yeasy.gitbooks.io/docker_practice/content/install/mirror.html
docker info 查看有没有加速器的网址
镜像:
docker search mysql 搜索mysql镜像
docker pull 镜像名称 下载镜像
docker images 查看本地已经下载好的镜像
docker rmi 镜像的ID 删除镜像
docker save 镜像ID>test.tar 导出镜像
docker load<test.tar 导入镜像
容器:
docker run -d -p 8080:80 --rm --name 容器名 镜像ID/镜像名称
-d 表示后台运行
-p 后跟端口1:2 将容器内部服务端口2映射到本地端口1(如果-p后什么都不写,随机分配端口)
--rm 容器停止之后,会自动删除
--name 容器运行起来之后赋予的名称
docker ps 查看运行的docker
docker ps -a 查看所有容器的状态
docker stop 容器名/容器ID 关闭容器
docker start 容器名/容器ID 打开容器
docker rm 容器名/容器ID 删除容器
进入容器内部:
docker exec -it 容器ID /bin/bash
-it 表示交互模式
使用VULHUB搭建环境
https://vulhub.org/#/environments/
https://github.com/vulhub/vulhub
1、需要安装pip,他是python用来管理工具包的工具
接着安装docker-compose
pip install docker-compose
docker compose -v 查看compose版本
2、下载vulhub资源
git clone https://github.com/vulhub/vulhub.git
3、进入到vulhub下某个目录中(漏洞名或者服务名称)
4、启动环境:docker-compose up -d 然后docker去pull镜像然后去运行。
移除环境:docker-compose down(注意:在哪个目录开启的就需要在哪个目录关闭)
运行起来的环境,需要查看其运行的端口,docker ps ,8080
http://127.0.0.1:8080 接下来去测试漏洞环境