透视 HTTP 协议
罗剑锋(Chrono)
前奇虎 360 技术专家,Nginx/OpenResty 开源项目贡献者
63943 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 48 讲
开篇词 (1讲)
透视 HTTP 协议
15
15
1.0x
00:00/00:00
登录|注册

43 | 如何进行Docker实验环境搭建?

添加用户到Docker组
启动Docker服务
使用Docker官方提供的脚本
使用tcpdump抓包
在Docker容器里验证示例
从Docker Hub获取镜像文件
Docker是一种流行的虚拟化技术
使用Wireshark查看网络数据
导出密钥的情形
使用tcpdump抓包
使用curl访问
测试HTTPS和HTTP/2
使用命令行访问HTTP服务
修改hosts文件
进入容器的运行环境
容器是“用完即扔”
使用docker run命令
查看本地镜像文件
使用docker pull命令
从Docker Hub上获取镜像文件
安装方法
支持多个操作系统
Docker是一种虚拟化技术
小结
在Docker容器里抓包
在Docker容器里做实验
启动Docker容器
获取Docker镜像
安装Docker环境
Docker实验环境搭建

该思维导图由 AI 生成,仅供参考

你好,我是 Chrono。
《透视 HTTP 协议》这个专栏正式完结已经一年多了,感谢你的支持与鼓励。
这一年的时间下来,我发现专栏“实验环境的搭建”确实是一个比较严重的问题:虽然我已经尽量把 Windows、macOS、Linux 里的搭建步骤写清楚了,但因为具体的系统环境千差万别,总会有各式各样奇怪的问题出现,比如端口冲突、目录权限等等。
所以,为了彻底解决这个麻烦,我特意制作了一个 Docker 镜像,里面是完整可用的 HTTP 实验环境,下面我就来详细说一下该怎么用。

安装 Docker 环境

因为我不知道你对 Docker 是否了解,所以第一步我还是先来简单介绍一下它。
Docker 是一种虚拟化技术,基于 Linux 的容器机制(Linux Containers,简称 LXC),你可以把它近似地理解成是一个“轻量级的虚拟机”,只消耗较少的资源就能实现对进程的隔离保护。
使用 Docker 可以把应用程序和它相关的各种依赖(如底层库、组件等)“打包”在一起,这就是 Docker 镜像(Docker image)。Docker 镜像可以让应用程序不再顾虑环境的差异,在任意的系统中以容器的形式运行(当然必须要基于 Docker 环境),极大地增强了应用部署的灵活性和适应性。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文详细介绍了如何使用Docker搭建HTTP实验环境,并提供了一套完整的指南。首先,文章解释了Docker的基本概念和安装方法,为读者打下了基础。随后,详细说明了如何获取和启动Docker镜像,以及在Docker容器中进行HTTP实验的方法,包括使用curl和telnet访问HTTP服务,测试HTTPS和HTTP/2的步骤,以及在Docker容器中使用tcpdump进行抓包的方法。总结要点包括Docker的流行性和轻量级虚拟机特性,获取和启动Docker镜像的命令,验证示例的方法,以及HTTPS实验的特殊步骤。文章以期待HTTP/3发布时的相会作为结束,给读者留下期待未来的余地。整体而言,本文以简洁清晰的语言,为读者提供了一份有用的Docker实验环境搭建和使用指南。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《透视 HTTP 协议》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(15)

  • 最新
  • 精选
  • Howard.Wundt
    首先祝老师教师节快乐!很期待着与老师的重逢。有个问题请教老师:轻量化虚拟机技术除了Docker 外还有其他选择吗?Docker 现在的政治化让人很不舒服。

    作者回复: 目前看来还没有同量级的对手,docker已经算是事实标准了,而且还有围绕它的很多生态,比如k8s,想要替代短时期内看不到可能性。

    2020-09-10
    2
    5
  • Geek_78044b
    老师确实很敬业,最近刚买了课程,一周多时间快速学习了一篇,开始的破冰篇确实特别基础,我还以为这门科是只针对的初学者的,没什么难度,后面讲http1.1, 2, 3, 安全篇等都还是比较有深度,感谢老师的付出。

    作者回复: 嗯,这个也跟课程的总体设计有关,一般都是要由浅入深循序渐进,尽量全面覆盖知识点。如果基础好可以跳过前面的,直接看后面感兴趣的部分。

    2020-09-20
    3
  • Shanks-王冲
    谢谢老师的Docker tutorial quick guide,让我对Docker有了fist touch;前几天看Android开发的技术博客时,不知怎么地就跳到Docker官网,并瞧了瞧,没敢下载来玩;但今天又机缘巧合看到这篇文章,I just pulled,感谢老师!

    作者回复: docker挺好玩的,我之前也是不太熟悉,偶然一接触,操作了几下就会用了,然后就研究了下去。

    2020-11-07
    2
  • 點點點,点顛
    老师教师节快乐😁。感谢老师还记得我们

    作者回复: 等以后http/3时再相聚。

    2020-09-10
    2
  • dongge
    Chrono老师,是我在极客时间见过的最负责的老师。

    作者回复: many thanks.

    2021-10-17
    1
  • silence
    老师请问我在测试tcpdump抓包的时候,将您的命令粘贴进去 tcpdump tcp port 443 -i lo -w /tmp/a.pcap 报了以下错误怎么解决呢? tcpdump: lo: SIOCETHTOOL(ETHTOOL_GET_TS_INFO) ioctl failed: Function not implemented

    作者回复: 感觉像是网络的问题,如果可能的话换个环境再做实验,比如docker镜像。

    2021-09-13
    3
    1
  • 大土豆
    HTTP/3会有个正式的发布会吗。。。我看现在快手和百度,HTTP3都已经在线上用了

    作者回复: 现在只是草案,虽然还没有正式发布,但估计和最终版差距不会太大,所以大家都提前做。 发布会肯定是不会有的,不会那么夸张。

    2020-09-10
    1
  • dongge
    好敬业。

    作者回复: thanks。

    2020-09-10
    1
  • giteebravo
    期待再次与老师相会, 谢谢老师!

    作者回复: 感谢支持!

    2020-09-10
    1
  • lesserror
    老师,很棒👍🏻!

    作者回复: nice to meet you again.

    2020-09-10
    1
收起评论
显示
设置
留言
15
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部