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 接下来去测试漏洞环境
Docker入门以及漏洞环境搭建(10.23 第二十五天)的更多相关文章
- Docker入门教程(九)10个镜像相关的API
Docker入门教程(九)10个镜像相关的API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第九篇,重点介绍了镜像相关的Docker Remote ...
- Mule 入门之:环境搭建
Mule 入门之:环境搭建 JDK1.5或以上版本Eclipse3.3以上 下载与安装:目前最新版本为2.2.1 下载,下载后得到一名为mule-standalone-2.2.1.zip的压缩文件,解 ...
- Cesium入门2 - Cesium环境搭建及第一个示例程序
Cesium入门2 - Cesium环境搭建及第一个示例程序 Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ 验 ...
- centos MySQL主从配置 ntsysv chkconfig setup命令 配置MySQL 主从 子shell MySQL备份 kill命令 pid文件 discuz!论坛数据库读写分离 双主搭建 mysql.history 第二十九节课
centos MySQL主从配置 ntsysv chkconfig setup命令 配置MySQL 主从 子shell MySQL备份 kill命令 pid文件 discuz!论坛数 ...
- ElementUI入门和NodeJS环境搭建
1. ElementUI简介 我们学习VUE,知道它的核心思想式组件和数据驱动,但是每一个组件都需要自己编写模板,样式,添加事件,数据等是非常麻烦的, 所以饿了吗推出了基于VUE2.0的组件库,它 ...
- Docker Swarm 集群环境搭建及弹性服务部署
上一篇文章<Docker Swarm 集群管理利器核心概念扫盲>中我们把 Swarm 重要的概念性知识给大家讲解了一波,理论完事就该实战了,这篇文章带大家从零开始,搭建 Docker Sw ...
- F5 BIG-IP 远程代码执行漏洞环境搭建
最近F5设备里的远程代码执行漏洞可谓是火爆,漏洞评分10分,所以,我也想搭建下环境复现一下该漏洞 漏洞详情 F5 BIG-IP 是美国F5公司一款集成流量管理.DNS.出入站规则.web应用防火墙.w ...
- 01-SV入门及仿真环境搭建
1.SV入门 参考书籍<SystemVerilog验证 测试平台编写指南> [美]克里斯·斯皮尔 著 2.仿真环境搭建 仿真工具:modelsim se 2019.2,它不仅支持Veril ...
- PHP入门教程-开发环境搭建
1.PHP简介: PHP是能让你生成动态网页的工具之一.PHP网页文件被当作一般HTML网页文件来处理并且在编辑时你可以用编辑HTML的常规方法编写PHP. 2.学习需要基础: a.HTML b.Ja ...
随机推荐
- mysql innodb cluster 无感知集群
MySQL 8.0.12 innodb cluster 高可用集群部署运维管理手册 Innodb cluster 原理介绍 Innodb cluster 利用组复制的 pxos 协议,保障数据一致性 ...
- 从零开始编写IntelliJ IDEA插件
写Java代码的时候,经常会涉及到重复性的操作,这个时候就会想要是有这样一个插件就好了,如果是大家都会遇到的场景,IDE或许已经提供了,再不然也有可能有人编写了相关的插件.要是这个操作是你们的编码环境 ...
- 114、Java中String类之字符串文本复杂二次拆分
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...
- centos7搭建svn服务器及客户端设置
centos7搭建svn服务器及客户端设置 centos7貌似预装了svn服务(有待确认),因此我们直接启动该服务即可 一.svn服务端配置(服务器IP假设为192.168.100.1) 步骤1:创建 ...
- 笔记||Pyhton3进阶之多线程原理
# 多线程 # 一个进程相当于一个或多个线程 # 当没有多线程编程时,一个进程也是一个主线程 # 但有多线程编程时,一个进程包含多个线程,包括主线程 # 使用线程 可以实现程序的并发 # python ...
- netsh命令获取wifi历史连接密码
首先[win+r]快捷键打开运行,输入cmd.或点击左下角win-运行-cmd 1.netsh wlan show profiles //列出所有的ap名称 2.netsh wlan show pro ...
- Linux-使用之vim出现的问题
参考来源: https://stackoverflow.com/questions/47667119/ycm-error-the-ycmd-server-shut-down-restart-wit-t ...
- tomcat安装apr报错解决
参考http://www.cnblogs.com/nuccch/p/7598361.html 1.no c complie 安装gcc解决 2.rm: cannot remove `libtoolT' ...
- 「JSOI2007」建筑抢修
传送门 Luogu 解题思路 显然先把所有楼按照报废时间递增排序. 然后考虑 \(1\cdots i-1\) 都能修完, \(i\) 修不完的情况. 显然我们在这 \(i\) 个里面至多只能修 \(i ...
- Matplotlib 安装
章节 Matplotlib 安装 Matplotlib 入门 Matplotlib 基本概念 Matplotlib 图形绘制 Matplotlib 多个图形 Matplotlib 其他类型图形 Mat ...