Docker基本命令

2023-05-16

一.安装docker

1.docker运行时需要到管理员用户权限,现在我们是普通用户,终端内输入命令 su root切换为root用户。

使用apt-get update   #更新软件源中的所有软件列表

2.使用apt install docker.io    #安装docker

3.查看版本  docker -v

二.docker的使用

1.使用docker  search  镜像名         #来搜索镜像

2.使用docker pull xfv5/ubuntu:php5.5    #下载镜像

3.使用docker images    #查看镜像

4.启动镜像

docker run -it 镜像ID  /bin/bash

使用exit可退出

5.后台启动本地镜像,使用image id 前三位即可

docker run -d -p 88:80 7de   #启动镜像将镜像内的80端口映射到本地88端口上

6.查看进程

docker ps            #查看运行镜像的容器进程

7.查看结果

8.进入容器

docker exec -it   容器进程ID   /bin/bash      #进入容器,使用进程前三位id即可

此时我们相当于进入了一个linux的操作系统,我们可以尝试输入一些常用的linux命令。

9.更改容器内容

vim 111.html                    //在容器内新建111.html文档并且输入hello docker

10.查看刚刚写的111.html

http://127.0.0.1:88/111.html

11.退出容器到宿主机

exit      #退出容器

12.文件交互

docker cp 222.txt 110:/var/www/html

http://127.0.0.1:88/222.txt      

13.生成新的镜像

docker commit 110 newubuntu:1.0          //将更改后的容器保存为新的镜像(如果不将更改后的容器保存为新的镜像,当前进程停止后,容器内新增数据消失);

110为当前容器进程;

newubuntu:1.0 分别对应镜像仓库中REPOSITORY和TAG 可以理解为这是新生成镜像的名称。

14.运行新生成的镜像

docker run -d -p85:80  a02    //启动,因本地80端口被占用,所以我们将

镜像80端口映射到本地的85端口上面

15.验证修改的内容是否在镜像内

访问http://127.0.0.1:85/111.html

16.停止一个容器

docker stop  容器进程ID

17.开启已经停止的容器

使用ps -a      #显示所有容器(默认显示正在运行)

docker start容器进程ID      #开启已经停止的进程

18.删除容器

删除容器使用 docker rm 命令:

docker rm -f 容器ID        #-f表示强制移除运行容器

注意:移除之后之前的修改就没有了

19.将修改完的镜像导出

docker save 7de | gzip > helloworld.tgz   //将镜像id前三位是7de的镜像导出到本地并且将其命名为muban.tgz

三.vulhub搭建

1.安装PIP

curl -s https://bootstrap.pypa.io/get-pip.py | python3

安装docker-compose

pip install docker-compose

安装完成后,执行docker-compose -v,有返回则说明安装成功。

2.下载Vulhub

安装完成docker和docker-compose后,拉取Vulhub到本地任意目录即可:

git clone https://github.com/vulhub/vulhub.git

3.启动漏洞环境

docker-compose会自动查找当前目录下的配置文件(默认文件名为docker-compose.yml),并根据其内容编译镜像和启动容器。所以,要运行某个漏洞靶场,需要先进入该漏洞所在的目录。

在Vulhub中选择某个环境,进入对应目录。

直接执行如下命令,进行漏洞靶场的编译和运行:

docker-compose build    # 可选

<p>docker-compose up -d

为什么docker-compose build是可选的?

docker-compose up -d运行后,会自动查找当前目录下的配置文件。如果配置文件中包含的环境均已经存在,则不会再次编译;如果配置文件中包含的环境不存在,则会自动进行编译。所以,其实docker-compose up -d命令是包含了docker-compose build的。

如果更新了配置文件,你可以手工执行docker-compose build来重新编译靶场环境。

4.移除刚刚的环境:

我们执行docker-compose up -d后,不要离开当前目录即可,漏洞测试结束后,执行如下命令移除环境:

docker-compose down

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Docker基本命令 的相关文章

随机推荐

  • Pycharm 之Scipy聚类色彩

    一 利用第三方库Scipy聚类 1 可以在jupyter notebook里先尝试一下scipy的功能 聚类的思想为初始先确定均值 xff0c 分类 xff0c 其次计算每组的平均值 xff0c 再次进行分类 xff0c 反复进行使得结果更
  • TM4C123系列(一)————GPIO

    电赛准备搞飞机 xff0c 特地学了下TM4 xff0c 准备用TM4搞飞控 一 实验介绍 点亮TM4C123板载LED 二 原理图 三 所需函数 1 SysCtlClockSet uint32 t ui32Config 参数 xff1a
  • TM4C123系列(三)————PWM输出

    一 实验介绍 使用PWM控制板载LED绿灯与蓝灯交替呼吸闪烁 二 PWM介绍 TM4C123有两个PWM模块 xff0c 每个模块有四个发生器和一个控制模块 xff0c 每个发生器可以产生两路PWM输出 xff0c 一共可以输出16路PWM
  • STM32与K210串口通信的解码问题(基于正点原子源码)

    这次电赛做的声源定位 xff0c 用的麦克风阵列加k210采集声音 xff0c k210需要将数据传送stm32 xff0c 在这里涉及到一个解码问题 xff0c 这个解码是我在之前用stm32与其他设备串口通信中从来没有遇到过的 xff0
  • 【数据结构与算法】数据结构

    数据结构 1 基本概念和术语2 逻辑结构与物理结构3 抽象数据类型 1 基本概念和术语 数据 xff1a 是描述客观事物的符号 xff0c 是计算机中可以操作的对象 xff0c 是能被计算机识别 xff0c 并输入给计算机处理的符号集合 数
  • requests库在爬虫中最常用方法简析

    requests 前言一 安装二 使用方法1 引入库2 发起请求3 获取数据4 其他 三 简单示例总结 前言 requests是基于urlib3的用于发起http请求的python第三方库 xff0c 使用方便 xff0c 响应快速 一 安
  • 爬取英语六级高频词

    文章目录 任务一 指定url二 发起请求并获取响应数据三 对响应数据进行数据解析四 持久化存储总结 任务 将网站中所有英语六级高频词以及翻译获取 xff0c 然后进行存储 一 指定url 网站中单词被分开存放在1 7页中 第1页的url x
  • 基于tkinter的第一个GUI小项目:背英语六级单词软件

    文章目录 任务1 引入库2 读入数据3 打开窗口4 初始化5 放置标签和按钮6 按钮事件7 演示 任务 基于爬取到的英语六级高频词 xff0c 利用python中的tkinter做出一个能起到考察词汇掌握情况作用的GUI 1 引入库 spa
  • Linux 6.1/6.2发布新补丁:缓解AMD处理器fTPM间歇性卡顿问题

    导读早些时候 xff0c AMD承认 xff0c 在Linux系统中开启AMD锐龙处理器的fTPM xff0c 将可能导致系统出现间歇性的卡顿 死机等情况 据悉 xff0c 该Bug在Linux 6 1内核中表现得最为明显 xff0c 这是
  • RHCE. Stratis 管理分层存储

    通过Stratis xff0c 便捷的使用精简配置 xff08 thin provisioning xff09 xff0c 快照 xff08 snapshots xff09 和基于池 xff08 pool based xff09 的管理和监
  • Jmeter性能测试(5)--JDBC Request

    jmeter xff08 五 xff09 JDBC Request jmeter中取样器 xff08 Sampler xff09 是与服务器进行交互的单元 一个取样器通常进行三部分的工作 xff1a 向服务器发送请求 xff0c 记录服务器
  • jQuery获取或设置元素的属性值prop/attr

    获取元素的属性值 固有属性 39 div prop color 自定义属性 39 div attr index html代码 lt a href 61 34 www baidu com 34 title 61 34 百度 34 gt 百度
  • Aop小案例

    AOP小案例 AOP Aspect Oriented Programming 面向切面编程 00P Object Oriented Programming 面向对象编程 xff0c 用对象化的思想来完成程序 AOP是对0OP的一个补充 xf
  • 详细介绍在ubuntu20.04如何安装ROS系统,附常见错误的解决办法

    为保证在安装的过程中配置无误 xff0c 建议先打开软件与更新的界面 xff0c 检查框出的选项是否打上了 检查完成后 xff0c 就可以开始安装啦 xff01 1 添加ROS软件源 将以下两个命令任意选择一个复制到ubuntu的终端执行
  • ROS1学习笔记:创建工作环境与功能包(ubuntu20.04)

    参考B站古月居ROS入门21讲 xff1a 创建工作环境与功能包 基于VMware Ubuntu 20 04 Noetic版本的环境 文章目录 一 工作空间介绍二 创建工作空间2 1 创建工作空间2 2 编译空代码的工作空间2 3 设置和检
  • SQL注入

    常用函数 SQL注入步骤 联合查询注入 函数与报错注入 SQL盲注 宽字节注入 sqlmap工具 常用函数 常用系统函数 基础信息函数功能system user 系统用户名user 用户名current user 当前用户名session
  • 信息收集*

    域名信息收集 DNS记录查询 whois查询 备案信息查询 子域名信息收集 常用工具 查询网站 网络信息收集 c段查询 nmap扫描 获取真实IP 敏感信息收集 目录后台扫描 指纹信息识别 系统指纹识别 中间件指纹识别 Web程序指纹识别
  • 将kali linux 的语言切换为中文

    重置root密码 导入kali后 xff0c 一般没有root密码 xff0c 需要重置root密码的 使用sudo passwd root 命令重置密码 换源 因为默认源下载东西特别慢 xff0c 所以我们需要换源 输入vim etc a
  • curl命令

    在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具 xff0c 可以说是一款很强大的http命令行工具 它支持文件的上传和下载 xff0c 是综合传输工具 xff0c 但按传统 xff0c 习惯称url为下载工具 htt
  • Docker基本命令

    一 安装docker 1 docker运行时需要到管理员用户权限 现在我们是普通用户 xff0c 终端内输入命令 su root切换为root用户 使用apt get update 更新软件源中的所有软件列表 2 使用apt install