【Docker】 常用命令

文章目录

      • 介绍Docker和容器化技术
        • 什么是Docker?
        • Docker的优势和应用场景
        • Docker的应用场景包括但不限于:
      • 安装和配置Docker
        • 安装Docker引擎
        • 配置Docker环境
      • Docker镜像命令
        • 搜索镜像
        • 拉取镜像
        • 查看本地镜像
        • 删除本地镜像
      • Docker容器命令
        • 创建容器
        • 启动容器
        • 停止容器
        • 查看容器状态
        • 进入容器
        • 删除容器
      • Docker网络命令
        • 创建网络
        • 查看网络
        • 连接容器到网络
        • 断开容器与网络的连接
      • Docker数据卷命令
        • 创建数据卷
        • 查看数据卷
        • 挂载数据卷到容器
        • 备份和恢复数据卷
      • Docker Compose命令
        • 编写Docker Compose文件
        • 启动和停止应用
        • 查看应用状态
      • Docker Swarm命令
        • 初始化Swarm模式
        • 添加节点
        • 部署服务
        • 扩展和缩减服务
      • Docker Registry命令
        • 搭建私有仓库
        • 推送镜像到私有仓库
        • 从私有仓库拉取镜像
      • 实际应用示例
        • 使用Docker部署Web应用
        • 使用Docker构建多容器应用
      • Jenkins服务器中部署docker的简单调用

介绍Docker和容器化技术

什么是Docker?

Docker是一种开源的容器化平台,可以让开发者打包应用程序及其所有依赖关系(如库、环境变量、配置文件等)到一个称为容器的独立运行环境中。容器是一种轻量级、可移植的软件单元,它们可以在任何支持Docker的环境中运行,而不受底层系统的影响。

Docker的优势和应用场景
  1. 轻量级和快速部署: Docker容器相比于传统虚拟机更轻量级,启动速度更快,使得应用程序的部署和扩展变得更加高效。

  2. 环境一致性: Docker容器可以确保在不同环境中应用程序的行为一致,避免了“在我的机器上可以运行”的问题。

  3. 资源利用率高: 多个Docker容器可以共享主机的操作系统内核,节省了资源,提高了系统利用率。

  4. 易于管理: Docker提供了丰富的命令行工具和API,使得容器的管理、监控、日志查看等操作变得简单。

  5. 应用隔离: 每个Docker容器都是相互隔离的,一个容器的问题不会影响其他容器,提高了应用程序的安全性。

Docker的应用场景包括但不限于:
  • 微服务架构: Docker容器适合部署和管理微服务,每个微服务可以打包成一个独立的容器,便于扩展和维护。

  • 持续集成和持续部署(CI/CD): Docker容器可以在不同环境中快速部署,适合用于构建持续集成和持续部署的流程。

  • 开发环境隔离: 开发人员可以使用Docker容器来创建隔离的开发环境,避免开发环境与生产环境不一致导致的问题。

  • 跨平台开发: Docker容器可以在不同操作系统和云平台上运行,使得应用程序在各种环境中具有高度的可移植性。

通过使用Docker,开发者可以更加便捷地构建、交付和运行应用程序,提高了开发效率和部署灵活性,成为现代软件开发中不可或缺的一环。

安装和配置Docker

安装Docker引擎

安装Docker引擎是使用Docker的第一步。以下是安装Docker引擎的常见步骤:

  1. Ubuntu系统下安装Docker:

    • 更新apt软件包索引:

      sudo apt-get update
      
    • 安装必要的软件包以允许apt通过HTTPS使用存储库:

      sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
      
    • 添加Docker的官方GPG密钥:

      curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
      
    • 设置Docker稳定版存储库:

      sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
      
    • 更新apt软件包索引:

      sudo apt-get update
      
    • 安装最新版本的Docker:

      sudo apt-get install docker-ce
      
    • 验证Docker是否安装成功:

      sudo docker --version
      
  2. macOS系统下安装Docker:

    • 下载Docker Desktop for Mac并安装:https://www.docker.com/products/docker-desktop
  3. Windows系统下安装Docker:

    • 下载Docker Desktop for Windows并安装:https://www.docker.com/products/docker-desktop
配置Docker环境

安装完Docker后,通常不需要太多额外的配置。但是,你可以根据需要进行一些常见的配置,如:

  1. 配置Docker镜像加速器: 在国内使用Docker时,可以配置镜像加速器以加速镜像的拉取和推送。常用的镜像加速器有阿里云加速器、网易云加速器等。

  2. 配置Docker容器网络: 可以创建自定义网络以连接Docker容器,或者使用默认的桥接网络。

  3. 配置Docker存储: 可以配置Docker容器的存储驱动,如使用本地存储、网络存储或云存储等。

  4. 安全配置: 可以配置Docker的安全参数,如限制容器的资源使用、设置用户访问权限等。

配置Docker环境可以根据实际需求进行调整,确保Docker在你的开发和部署流程中能够更好地发挥作用。

Docker镜像命令

搜索镜像

要在Docker Hub上搜索镜像,可以使用以下命令:

docker search <镜像名称>

例如,要搜索名为ubuntu的镜像,可以运行:

docker search ubuntu
拉取镜像

要拉取一个镜像到本地,可以使用以下命令:

docker pull <镜像名称>:<标签>

例如,要拉取Ubuntu 20.04的镜像,可以运行:

docker pull ubuntu:20.04
查看本地镜像

要查看本地已经拉取的镜像列表,可以使用以下命令:

docker images

这将列出本地所有的镜像,包括镜像名称、标签、镜像ID、创建时间等信息。

删除本地镜像

要删除本地的一个或多个镜像,可以使用以下命令:

docker rmi <镜像ID或镜像名称>

如果要删除多个镜像,可以在命令中指定多个镜像ID或名称。

例如,要删除名为ubuntu:20.04的镜像,可以运行:

docker rmi ubuntu:20.04

请注意,删除镜像时要谨慎,确保不再需要这些镜像,因为删除后将无法恢复。

Docker容器命令

创建容器

要创建一个容器,可以使用以下命令:

docker create <镜像名称> <命令>

例如,要创建一个基于Ubuntu 20.04镜像的容器,可以运行:

docker create ubuntu:20.04
启动容器

要启动一个已经创建的容器,可以使用以下命令:

docker start <容器ID或容器名称>

例如,要启动名为my_container的容器,可以运行:

docker start my_container
停止容器

要停止一个正在运行的容器,可以使用以下命令:

docker stop <容器ID或容器名称>

例如,要停止名为my_container的容器,可以运行:

docker stop my_container
查看容器状态

要查看容器的状态,可以使用以下命令:

docker ps

这将列出正在运行的容器的信息,包括容器ID、镜像名称、状态、创建时间等。

如果要查看所有包括已停止的容器,可以使用-a选项:

docker ps -a
进入容器

要进入一个正在运行的容器,可以使用以下命令:

docker exec -it <容器ID或容器名称> <命令>

例如,要进入名为my_container的容器并打开一个交互式终端,可以运行:

docker exec -it my_container bash

这将在容器内部打开一个bash终端,可以在其中执行命令。

删除容器

要删除一个容器,可以使用以下命令:

docker rm <容器ID或容器名称>

例如,要删除名为my_container的容器,可以运行:

docker rm my_container

请注意,删除容器时要谨慎,确保不再需要这些容器,因为删除后将无法恢复。

Docker网络命令

创建网络

要创建一个自定义网络,可以使用以下命令:

docker network create <网络名称>

例如,要创建一个名为my_network的网络,可以运行:

docker network create my_network
查看网络

要查看Docker中存在的网络列表,可以使用以下命令:

docker network ls

这将列出所有的Docker网络,包括网络ID、名称、驱动程序等信息。

连接容器到网络

要将一个容器连接到指定的网络,可以使用以下命令:

docker network connect <网络名称> <容器ID或容器名称>

例如,要将容器my_container连接到my_network网络,可以运行:

docker network connect my_network my_container
断开容器与网络的连接

要将一个容器与指定网络断开连接,可以使用以下命令:

docker network disconnect <网络名称> <容器ID或容器名称>

例如,要将容器my_containermy_network网络断开连接,可以运行:

docker network disconnect my_network my_container

请注意,网络命令可以帮助您管理Docker中的网络配置,确保容器能够按照需要进行通信和连接。

Docker数据卷命令

创建数据卷

要创建一个数据卷,可以使用以下命令:

docker volume create <数据卷名称>

例如,要创建名为my_volume的数据卷,可以运行:

docker volume create my_volume
查看数据卷

要查看所有的数据卷,可以使用以下命令:

docker volume ls

这将列出所有的数据卷,包括数据卷的名称和驱动程序。

挂载数据卷到容器

要将一个数据卷挂载到容器中,可以使用以下命令:

docker run -v <数据卷名称>:<容器路径> <镜像名称>

例如,要将名为my_volume的数据卷挂载到容器的/data路径,可以运行:

docker run -v my_volume:/data ubuntu:20.04

这将创建一个基于Ubuntu 20.04镜像的容器,并将my_volume数据卷挂载到容器的/data路径。

备份和恢复数据卷

要备份数据卷,可以使用以下命令将数据卷导出为一个.tar文件:

docker run --rm -v <数据卷名称>:/data -v <目标路径>:/backup ubuntu:20.04 tar cvf /backup/<备份文件名>.tar /data

例如,要备份名为my_volume的数据卷到/backup目录下的my_volume_backup.tar文件中,可以运行:

docker run --rm -v my_volume:/data -v /backup:/backup ubuntu:20.04 tar cvf /backup/my_volume_backup.tar /data

要恢复数据卷,可以使用以下命令将.tar文件导入到一个新的数据卷中:

docker run --rm -v <目标路径>:/data -v <备份文件路径>:/backup ubuntu:20.04 tar xvf /backup/<备份文件名>.tar -C /data

例如,要将/backup目录下的my_volume_backup.tar文件恢复为一个名为my_volume_restore的数据卷,可以运行:

docker run --rm -v my_volume_restore:/data -v /backup:/backup ubuntu:20.04 tar xvf /backup/my_volume_backup.tar -C /data

这将创建一个名为my_volume_restore的数据卷,并将备份文件中的内容恢复到该数据卷中。

Docker Compose命令

编写Docker Compose文件

Docker Compose使用YAML文件来定义和配置多个容器应用。以下是一个简单的Docker Compose文件示例:

version: '3'
services:
  web:
    image: nginx:latest
    ports:
      - 80:80
    volumes:
      - ./html:/usr/share/nginx/html

在这个示例中,我们定义了一个名为web的服务,使用了nginx:latest镜像,并将主机的80端口映射到容器的80端口。还使用了一个数据卷将主机上的./html目录挂载到容器的/usr/share/nginx/html路径。

启动和停止应用

要启动使用Docker Compose定义的应用程序,可以使用以下命令:

docker-compose up

这将根据Docker Compose文件启动所有定义的服务。

要停止应用程序,可以使用以下命令:

docker-compose down

这将停止并移除所有相关的容器、网络和数据卷。

查看应用状态

要查看Docker Compose应用程序的状态,可以使用以下命令:

docker-compose ps

这将显示所有定义的服务的状态,包括容器ID、状态、端口映射等信息。

可以使用其他Docker命令,如docker psdocker logs,来查看单个服务的状态和日志。

Docker Swarm命令

Docker Swarm是Docker的内置原生集群和编排工具。它允许您将多个Docker主机组成一个集群,以便轻松地部署和管理分布式应用程序。

初始化Swarm模式

要初始化一个Docker Swarm集群,可以使用以下命令:

docker swarm init

这将将当前主机设置为Swarm管理节点,并生成一个加入令牌,用于其他节点加入集群。

添加节点

要将其他节点加入到Swarm集群中,可以使用以下命令:

docker swarm join --token <加入令牌> <管理节点IP>:<端口>

其中,<加入令牌>是在初始化Swarm模式时生成的加入令牌,<管理节点IP>是Swarm管理节点的IP地址,<端口>是Swarm管理节点的监听端口。

部署服务

要在Swarm集群中部署服务,可以使用以下命令:

docker service create --name <服务名称> --replicas <副本数> <镜像名称>

其中,<服务名称>是要部署的服务的名称,<副本数>是要运行的服务副本数,<镜像名称>是要使用的镜像名称。

例如,要部署一个名为my_service的服务,使用nginx:latest镜像,并运行3个副本,可以运行:

docker service create --name my_service --replicas 3 nginx:latest
扩展和缩减服务

要扩展或缩减Swarm集群中的服务副本数,可以使用以下命令:

docker service scale <服务名称>=<副本数>

例如,要将名为my_service的服务的副本数扩展到5个,可以运行:

docker service scale my_service=5

这将增加my_service服务的副本数到5个。

要缩减副本数,只需将<副本数>设置为较小的值即可。

请注意,Swarm会自动处理服务的副本分布和容器的调度,以确保服务的高可用性和负载均衡。

Docker Registry命令

Docker Registry是Docker官方提供的镜像仓库服务,您可以使用它来存储和管理Docker镜像。您可以搭建私有的Docker Registry来存储自己的镜像。

搭建私有仓库

要搭建私有的Docker Registry,可以使用以下命令:

docker run -d -p 5000:5000 --restart=always --name registry registry:2

这将在本地启动一个私有的Docker Registry服务,并映射到主机的5000端口。

推送镜像到私有仓库

要将一个镜像推送到私有仓库,首先需要给镜像打上私有仓库地址的标签,然后推送到私有仓库。以下是推送镜像到私有仓库的命令:

docker tag image_name localhost:5000/image_name
docker push localhost:5000/image_name

这将把名为image_name的镜像推送到搭建的私有仓库中。

从私有仓库拉取镜像

要从私有仓库拉取镜像,可以使用以下命令:

docker pull localhost:5000/image_name

这将从私有仓库中拉取名为image_name的镜像到本地。

实际应用示例

使用Docker部署Web应用

以下是使用Docker部署Web应用的示例步骤:

  1. 编写Dockerfile:创建一个名为Dockerfile的文件,其中定义了如何构建Web应用的Docker镜像。例如,可以基于一个现有的Web服务器镜像,如Nginx或Apache,将应用程序代码复制到镜像中,并设置适当的配置。

  2. 构建Docker镜像:在终端中导航到包含Dockerfile的目录,并运行以下命令来构建镜像:

    docker build -t my_web_app .
    

    这将根据Dockerfile构建一个名为my_web_app的镜像。

  3. 运行Docker容器:使用以下命令将镜像作为容器运行起来:

    docker run -d -p 80:80 my_web_app
    

    这将在端口80上将容器的80端口映射到主机上,使Web应用可通过主机的IP地址访问。

现在,您的Web应用已经在Docker容器中运行,并且可以通过主机的IP地址访问。

使用Docker构建多容器应用

对于复杂的应用程序,可能需要多个容器来支持不同的组件。以下是使用Docker构建多容器应用的示例步骤:

  1. 编写Docker Compose文件:创建一个名为docker-compose.yml的文件,其中定义了应用程序的各个服务和它们之间的依赖关系。在该文件中,可以指定每个服务使用的镜像、容器之间的网络连接等。

  2. 编写Dockerfile:为每个服务编写Dockerfile,定义如何构建每个服务的镜像。可以使用不同的基础镜像和安装所需的软件包、配置等。

  3. 构建和启动应用程序:在终端中导航到包含docker-compose.yml文件的目录,并运行以下命令来构建和启动应用程序:

    docker-compose up -d
    

    这将根据docker-compose.yml文件中的配置构建和启动应用程序的所有服务。

现在,您的多容器应用程序已经在Docker中构建和运行起来了。Docker Compose会自动处理服务之间的网络连接和依赖关系,使应用程序的部署变得简单和可靠。

请注意,这只是一个简单的示例,实际的多容器应用程序可能涉及更多的服务和复杂的配置。

Jenkins服务器中部署docker的简单调用

  1. 运行命令

    docker run -d -it --name rocketmq-dashboard --restart=always -d -p 6765:8080 xxx.com/cea/rocketmq-dashboard:1.0.0
    
    • docker run: 运行一个新的容器。
    • -d: 后台运行容器。
    • -it: 分配一个伪终端并保持标准输入打开。
    • --name rocketmq-dashboard: 为容器指定一个名称为 rocketmq-dashboard
    • --restart=always: 设置容器总是在Docker守护进程启动时重新启动。
    • -p 6765:8080: 将主机的端口6765映射到容器的端口8080。
    • xxx.com/cea/rocketmq-dashboard:1.0.0: 要运行的镜像名称及其标签。
  2. 查看进程名称

    docker ps
    
    • docker ps: 查看正在运行的容器列表。
  3. 进入运行目录
    进入运行目录 xxxx 可以是ps查出来的名称 也可以是id

    docker exec -it xxxxx /bin/bash
    
    • docker exec: 在运行的容器中执行命令。
    • -it: 分配一个伪终端并保持标准输入打开。
    • xxxxx: 容器的名称或ID。
    • /bin/bash: 要在容器中执行的命令,这里是启动一个bash shell。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/912822.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

k8s 处理namespace删除一直处于Terminating —— 筑梦之路

问题现象 k8s集群要清理某个名空间&#xff0c;把该名空间下的资源全部删除后&#xff0c;删除名空间&#xff0c;一直处于Terminating状态&#xff0c;无法完全清理掉。 如何处理 为什么要记录下这个处理的步骤&#xff0c;经过查询资料&#xff0c;网上也有各种各样的方法&…

鸿蒙多线程开发——Worker多线程

1、概 述 1.1、基本介绍 Worker主要作用是为应用程序提供一个多线程的运行环境&#xff0c;可满足应用程序在执行过程中与主线程分离&#xff0c;在后台线程中运行一个脚本进行耗时操作&#xff0c;极大避免类似于计算密集型或高延迟的任务阻塞主线程的运行。 创建Worker的线…

Python实现SSA智能麻雀搜索算法优化BP神经网络回归模型(优化权重和阈值)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后关注获取。 1.项目背景 随着人工智能技术的发展&#xff0c;机器学习算法在各个领域的应用越来越广泛。其中&#xff0c;神…

qt QListView详解

1、概述 QListView 是 Qt 框架中的一个视图类&#xff0c;用于展示模型中的数据。它基于 QAbstractItemView&#xff0c;支持多种视图模式&#xff0c;如列表视图&#xff08;List View&#xff09;、图标视图&#xff08;Icon View&#xff09;等。QListView 是模型/视图框架…

【MySQL】数据库整合攻略 :表操作技巧与详解

前言&#xff1a;本节内容讲述表的操作&#xff0c; 对表结构的操作。 是对表结构中的字段的增删查改以及表本身的创建以及删除。 ps&#xff1a;本节内容本节内容适合安装了MySQL的友友们进行观看&#xff0c; 实操更有利于记住哦。 目录 创建表 查看表结构 修改表结构 …

图片搜索引擎,来快速实现一个高性能的本地图片搜索引擎

文章来自&#xff1a;苏洋博客 以及基于 Redis 来快速实现一个高性能的本地图片搜索引擎&#xff0c;在本地环境中&#xff0c;使用最慢的稠密向量检索方式来在一张万图片中查找你想要的图片&#xff0c;总花费时间都不到十分之一秒。 写在前面 Redis, 你这浓眉大眼的家伙也正…

DevOps-课堂笔记

各种 aaS 类比于计算机网络的 OSI 参考模型&#xff0c;一个软件应用项目需要不同的支撑层&#xff0c;例如从下至上大概需要&#xff1a; 硬件层面的服务器针对硬件做弹性分配的虚拟化机制&#xff0c;例如虚拟机在虚拟化环境内运行的 OS支撑软件应用的中间件&#xff0c;例…

边缘计算的学习

文章目录 概要何为边缘计算&#xff1f;现阶段&#xff0c;企业使用边缘计算相对云计算 整体架构流程边缘网络组件边缘计算与云安全 研究方向结合引用 概要 edge 何为边缘计算&#xff1f; 边缘计算&#xff08;英语&#xff1a;Edge computing&#xff09;&#xff0c;是一种…

Spring Boot实现文件上传与OSS集成:从基础到应用

目录 前言1. 文件上传的基础实现1.1 前端文件上传请求1.2 后端文件接收与保存 2. 集成第三方OSS服务2.1 准备工作2.2 编写OSS集成代码2.3 修改Controller实现文件上传至OSS 3. 文件上传的扩展&#xff1a;多文件上传与权限控制结语 前言 随着互联网应用的快速发展&#xff0c;…

万字长文解读深度学习——卷积神经网络CNN

推荐阅读&#xff1a; 卷积神经网络&#xff08;CNN&#xff09;详细介绍及其原理详解 CNN笔记&#xff1a;通俗理解卷积神经网络 文章目录 &#x1f33a;深度学习面试八股汇总&#x1f33a;主要组件输入层卷积层 (Convolutional Layer)批归一化层&#xff08;Batch Normalizat…

07 Oracle数据库恢复基础解析:从检查点到归档,一步步构建数据安全防线

文章目录 Oracle数据库恢复基础解析&#xff1a;从检查点到归档&#xff0c;一步步构建数据安全防线一、检查点&#xff08;Checkpoint&#xff09;1.1 检查点定义1.2 检查点重要性1.3 检查点工作原理1.4 手动触发检查点 二、日志&#xff08;Redo Log&#xff09;2.1 日志定义…

css | padding vs margin

前置知识 height是作用域内容(content)区域的 padding和margin用百分比的时候是怎么算的&#xff1f;父元素的宽度。注意&#xff0c;不是根据父元素相应的属性&#xff0c;就是父亲的width 自身的height是0 以下代码&#xff0c;外面盒子是100x10的&#xff0c;里面的widt…

Linux平台C99与C++11获取系统时间

源码: #include <iostream> #include <chrono> #include <ctime> #include <thread>using namespace std; int main() {cout << "===使用C99方式获取系统时间===" << endl;time_t now = time(nullptr);struct tm *tm_c99 = lo…

pwn学习笔记(11)--off_by_one

pwn学习笔记&#xff08;11&#xff09;–off_by_one ​ 在处理for循环或者while循环的时候&#xff0c;有的可能会遇到如下情况&#xff1a; #include<stdio.h>int main(){char buf[0x10];for (int i 0 ; i < 0x10 ; i ){buf[i] getchar();}puts(buf);}​ 多次输…

基于Java Web的传智播客crm企业管理系统的设计与实现

项目描述 临近学期结束&#xff0c;还是毕业设计&#xff0c;你还在做java程序网络编程&#xff0c;期末作业&#xff0c;老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里根据疫情当下&#xff0c;你想解决的问…

【Vue】Vue3.0(十七)Vue 3.0中Pinia的深度使用指南(基于setup语法糖)

上篇文章&#xff1a; 【Vue】Vue3.0&#xff08;十一&#xff09;Vue 3.0 中 computed 计算属性概念、使用及示例 &#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;Vue专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年11月10日15点23分 文章…

常用的c++新特性-->day03

断言和异常 断言断言的基本使用 静态断言静态断言的基本使用 异常异常基本使用c98异常案例 noexceptnoexcept简单案例 断言 断言的基本使用 #include <iostream> #include <cassert>// >>>>>>>>>>>>>>>> 断言的…

11月7日星期四今日早报简报微语报早读

11月7日星期四&#xff0c;农历十月初七&#xff0c;早报#微语早读。 1、河南&#xff1a;旅行社组织1000人次境外游客在豫住宿2夜以上&#xff0c;可申请激励奖补&#xff1b; 2、主播宣称下播后商品恢复原价构成欺诈&#xff0c;广州市监&#xff1a;罚款5万元&#xff1b;…

数据结构-并查集专题(1)

一、前言 因为要开始准备年底的校赛和明年年初的ACM、蓝桥杯、天梯赛&#xff0c;于是开始按专题梳理一下对应的知识点&#xff0c;先从简单入门又值得记录的内容开始&#xff0c;并查集首当其冲。 二、我的模板 虽然说是借用了jiangly鸽鸽的板子&#xff0c;但是自己也小做…

【dvwa靶场:XSS系列】XSS (Stored)低-中-高级别,通关啦

更改name的文本数量限制大小&#xff0c; 其他我们只在name中进行操作 【除了低级可以在message中进行操作】 一、低级low <script>alert("假客套")</script> 二、中级middle 过滤了小写&#xff0c;咱们可以大写 <Script>alert("假客套…