bug和docker

第一天

什么样的算bug?

• –软件未达到产品说明书中已标明的功能。(不应该有的)
• –软件出现了产品说明书中指明不会出现的错误。(出现不应该的错误)
• –软件功能超出了产品说明书指明的范围。(超出范围)
• –软件未达到产品说明书虽未指出但应达到的⽬标。(未达到隐性的要求)
• –软件测试员认为软件难以理解,不易使⽤,运⾏速度缓慢,
或者最终⽤户认为该软件使⽤效果不好。(使用效果不好)

什么是docker

Docker 将应用程序与该程序的依赖,打包在一个文件里面,改文件包括了所有打包得应用程序的所有依赖,像数据库等;直接运行改文件,就可以让程序跑起来,从而不用再去考虑环境问题。可以为将程序和运行环境依赖封装在一个文件中,这样使用时,简化安装调试的过程,方便运行和调用。
去仓库把镜像拉到本地,然后用一条命令把镜像运行起来,变成容器。
请添加图片描述
docker架构图

docker和linux命令

启动Docker服务

systemctl start docker

设置开机自动启动

systemctl enable docker

显示指定工作目录下之内容
ls
通过ssh协议远程连接服务器主机
ssh root@ip
通过 uname -r 命令查看你当前的内核版本
uname -r
root权限更新Yum包(linux命令不熟悉的同学本文建议使用root权限登陆安装docker,省去很多不必要麻烦)
yum update
设置Yum源:
安装 yum-utils , 使用 yum-config-manager 工具设置Yum源, 后面两个是 devicemapper驱动依赖
yum install -y yum-utils device-mapper-persistent-data lvm2
使用阿里源访问
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
查看所有仓库中docker版本,并选择特定版本安装:(此处我们查看社区版 docker-ce)
yum list docker-ce --showduplicates** | sort -r
安装docker (此处我们安装社区版 docker-ce)
yum install docker-ce (这样写默认安装最新版本)

docker pull 地址把程序从远程拉到本地

docker run是在本地把拉到本地的image(镜像)在容器中运行

-p 3000(对外端口,在浏览器上访问的):3000(程序自带的端口不需要改)

协议

文件一
在这里插入图片描述通过fiddler抓包 对数据进行分析
HTTP 协议
一、超文本传输协议
Web 服务器和浏览器通过 HTTP 协议在 Internet 上发送和接收消息。HTTP 协议是一种请求-
应答式的协议——客户端发送一个请求,服务器返回该请求的应答。HTTP 协议使用可靠的 TCP
连接,默认端口是 80。HTTP 的第一个版本是 HTTP/0.9,后来发展到了 HTTP/1.0,现在最新的
版本是 HTTP/1.1。HTTP/1.1 由 RFC 2616 定义(pdf 格式)。
本文只简要介绍 HTTP 1.1 的相关知识,但应该足以让你理解 Web 服务器和浏览器发送的消
息。如果你要了解更多的细节,请参考 RFC 2616。
在 HTTP 中,客户端/服务器之间的会话总是由客户端通过建立连接和发送 HTTP 请求的方
式初始化,服务器不会主动联系客户端或要求与客户端建立连接。浏览器和服务器都可以随时中
断连接,例如,在浏览网页时你可以随时点击“停止”按钮中断当前的文件下载过程,关闭与 Web
服务器的 HTTP 连接。
1.1 HTTP 请求
HTTP 请求由三个部分构成,分别是:方法-URI-协议/版本,请求头,请求正文。下面是一
个 HTTP 请求的例子:

GET /servlet/default.jsp HTTP/1.1 
Accept: text/plain; text/html 
Accept-Language: en-gb 
Connection: Keep-Alive 
Host: localhost 
Referer: http://localhost/ch8/SendDetails.htm 
User-Agent: Mozilla/4.0 (compatible; MSIE 4.01; Windows 98) 
Content-Length: 33 
Content-Type: application/x-www-form-urlencoded 
Accept-Encoding: gzip, deflate 
userName=JavaJava&userID=javaID 

请求的第一行是“方法-URI-协议/版本”,其中 GET 就是请求方法,/servlet/default.jsp 表示
URI,HTTP/1.1 是协议和协议的版本。根据 HTTP 标准,HTTP 请求可以使用多种请求方法。例
如,HTTP 1.1 支持七种请求方法:GET,POST,HEAD,OPTIONS,PUT,DELETE,和 TRACE。 在 Internet 应用中,最常用的请求方法是 GET 和 POST。
URI 完整地指定了要访问的网络资源,通常认为它相对于服务器的根目录而言,因此总是以
“/”开头。URL 实际上是 URI 一种类型。最后,协议版本声明了通信过程中使用的 HTTP 协议的
版本。
请求头包含许多有关客户端环境和请求正文的有用信息。例如,请求头可以声明浏览器所用
的语言,请求正文的长度,等等,它们之间用一个回车换行符号(CRLF)分隔。
请求头和请求正文之间是一个空行(只有 CRLF 符号的行),这个行非常重要,它表示请求
头已经结束,接下来的是请求的正文。一些介绍 Internet 编程的书籍把这个 CRLF 视为 HTTP 请
求的第四个组成部分。
在前面的 HTTP 请求中,请求的正文只有一行内容。当然,在实际应用中,HTTP 请求正文
可以包含更多的内容。
1.2 HTTP 应答
和 HTTP 请求相似,HTTP 应答也由三个部分构成,分别是:协议-状态代码-描述,应答头,
应答正文。下面是一个 HTTP 应答的例子:

HTTP/1.1 200 OK 
Server: Microsoft-IIS/4.0 
Date: Mon, 3 Jan 1998 13:13:33 GMT 
Content-Type: text/html 
Last-Modified: Mon, 11 Jan 1998 13:23:42 GMT 
Content-Length: 112 
<html> 
<head> 
<title>HTTP 应答示例</title></head><body> 
Hello HTTP! 
</body> 
</html> 

HTTP 应答的第一行类似于 HTTP 请求的第一行,它表示通信所用的协议是 HTTP 1.1,服务
器已经成功地处理了客户端发出的请求(200 表示成功),一切顺利。
应答头也和请求头一样包含许多有用的信息,例如服务器类型、日期时间、内容类型和长度
等。应答的正文就是服务器返回的 HTML 页面。应答头和正文之间也用 CRLF 分隔。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值