news 2026/1/12 1:58:22

Docker容器技术场景化操作实战及网络模式部署

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Docker容器技术场景化操作实战及网络模式部署

目录

前言:

一.使用 nginx 镜像创建并启动容器(后台运行)

二.容器的创建,启动与停止

1.使用create创建容器并查看

2.启动容器并查看状态

3.停止容器并查看状态

三.进行容器交互

四.关于宿主机与容器之间的文件互相复制

1.从宿主机复制文件到容器

2.从容器复制文件到宿主机

五.容器的迁移(导入导出)

1.容器的导出

2.容器的导入

六.下线与清理容器

1.删除指定容器

2.批量停止容器

3.批量删除容器

4.批量删除镜像

七.使用默认模式(bridge模式)

1.使用bridge模式启动nginx

2.查看一下容器,检查相应的IP和端口映射

3.查看连接

八.使用host模式(高性能服务部署)

1.使用host网络模式启动nginx

2.查看连接

九.使用container模式(紧密耦合服务)

1.启动主容器

2.查看主容器的网络命名空间

3.启动共享网络的辅助容器

4.查看并对比主辅容器的net设置

十.自定义网络模式(多容器与指定IP)

1.创建自定义网络

2.在自定义网络中启动容器

总结

前言:

今天所展现的是Docker容器化技术的相关场景化操作实战,以及进行网络配置时的几种方式的实际应用。

一.使用 nginx 镜像创建并启动容器(后台运行)

二.容器的创建,启动与停止

1.使用create创建容器并查看

2.启动容器并查看状态

3.停止容器并查看状态

三.进行容器交互

进行’ls‘命令查看,并查看文件’os-release‘

四.关于宿主机与容器之间的文件互相复制

1.从宿主机复制文件到容器

2.从容器复制文件到宿主机

五.容器的迁移(导入导出)

1.容器的导出

2.容器的导入

注意,导入先前容器打包成的tar包之后,不会创建容器,而是生成镜像。

说明题:export/import 和 save/load 有什么区别?

export/import实现的是导出/导入容器整体,save/reload实现的则是导出/导入镜像

六.下线与清理容器

1.删除指定容器

注意,这里正规操作应该是先停止容器,再进行删除,实在需要强制删除,可以在rm后添加f参数。

2.批量停止容器

首先是awk相关操作(包含筛选)

另一种是直接使用docker stop后面加所有容器

3.批量删除容器

4.批量删除镜像

这里我只删除了某个特定的镜像,采取了grep进行筛选。

安全说明:

为什么生产环境不建议直接执行“删除所有容器/镜像”?

1.删除所有容器/镜像包含其所有配置和依赖,如果涉及重要数据,极有可能丢失

2.假设部分容器/镜像涉及网络配置和多个库共用,极有可能造成生产混乱

接下来是网络模式部分:

七.使用默认模式(bridge模式)

1.使用bridge模式启动nginx

这里是基于nginx的随机映射

2.查看一下容器,检查相应的IP和端口映射

3.查看连接

思考:

1.为什么外部不能直接访问容器 IP?

因为bridge模式下容器的网桥是根据宿主机虚拟出来的,实际不存在,所以无法连接外网

2.bridge 模式下端口映射的作用是什么?

端口映射到宿主机之后,外网可以通过宿主机的IP以及这个端口去进行访问

八.使用host模式(高性能服务部署)

1.使用host网络模式启动nginx

在host模式下,容器与宿主机默认使用相同的ip和端口而并非独立,因此不会显示

2.查看连接

思考:

1.host 模式下,容器有没有独立 IP?

没有,与宿主机共用

2.host模式适用于什么类型的场景

公司内部的软件,网站等的架设和访问

3.host 模式的安全风险是什么?

因为与宿主机共用IP和端口,所以极有可能暴露宿主机信息

九.使用container模式(紧密耦合服务)

1.启动主容器

这里在创建时添加container参数去规定模式

2.查看主容器的网络命名空间

3.启动共享网络的辅助容器

4.查看并对比主辅容器的net设置

此为主

此为辅

可以观察到在container网络模式下这个参数是一致的,说明主辅容器共享了相同的IP和端口

思考:

1.container 模式与 host 模式的区别?

container模式是后面的容器可以直接使用第一台容器(直接创建默认bridge模式)的IP和端口,而host模式是全部和宿主机使用一样的IP和端口

2.为什么称这种模式为 Sidecar(边车模式—)?

边车/挎斗,本意即是形容主容器和辅助容器的关系,他们互相独立却紧密结合,独立体现在个体,结合体现在共用IP和端口

十.自定义网络模式(多容器与指定IP)

1.创建自定义网络

2.在自定义网络中启动容器

这里添加network中的mynetwork配置参数去在刚才设置的指定IP中启动容器

查看可以看到刚才设置的mynetwork自定义网络模式已经在列表中。

思考:

1.为什么默认 bridge 不能指定 IP?

因为bridge模式仅支持自动分配

2.自定义网络适合什么场景?

比如说公司内部或者某团体内部使用容器或者其他技术需要内部共享,不外接的,可以使用

3.Docker 如何实现容器间二层通信?

docker在使用bridge网络模式去进行部署时,所有容器与宿主机完全隔离,互相之间却可以通过类似于虚拟交换机的虚拟桥接进行通信,这样就构成了二层网络通信

总结:

本次详细讲述了关于docker容器的相关增删改查操作,包括交互和迁移,另外还对四种网络部署模式进行了实战操作演示,希望对读者们有所帮助!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/26 22:36:08

BetterNCM功能增强工具:快速体验个性化定制新境界

BetterNCM功能增强工具:快速体验个性化定制新境界 【免费下载链接】BetterNCM-Installer 一键安装 Better 系软件 项目地址: https://gitcode.com/gh_mirrors/be/BetterNCM-Installer 想要让音乐播放器拥有更多个性化功能却担心操作复杂?BetterNC…

作者头像 李华
网站建设 2026/1/1 11:12:19

终极自动化签到神器:支持50+平台的Python签到工具完整指南

在当今数字时代,我们每天需要登录多个平台进行签到获取积分或奖励,手动操作既耗时又容易忘记。青龙面板平台签到函数项目应运而生,这是一款基于Python开发的强大自动化签到工具,能够帮助用户轻松管理50主流平台的每日签到任务。 【…

作者头像 李华
网站建设 2025/12/22 21:25:48

【车辆路径规划】基于RRT算法实现车队编队路径规划附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 🍎 往期回顾关注个人主页:Matlab科研工作室 🍊个人信条:格物致知,完整Matlab代码获取及仿…

作者头像 李华
网站建设 2025/12/30 20:56:35

KeymouseGo终极指南:快速掌握鼠标键盘自动化工具

KeymouseGo终极指南:快速掌握鼠标键盘自动化工具 【免费下载链接】KeymouseGo 类似按键精灵的鼠标键盘录制和自动化操作 模拟点击和键入 | automate mouse clicks and keyboard input 项目地址: https://gitcode.com/gh_mirrors/ke/KeymouseGo 想要摆脱重复性…

作者头像 李华
网站建设 2025/12/22 21:25:24

5分钟快速上手XiaoMusic:小爱音箱音乐播放自由终极指南

你是否曾对小爱音箱说"播放周杰伦的青花瓷",却得到"抱歉,这首歌暂时无法播放"的回复?现在,有了XiaoMusic开源项目,你的小爱音箱将获得前所未有的音乐播放能力。这个工具通过智能语音控制&#xff…

作者头像 李华
网站建设 2025/12/22 21:25:15

ESP32教程全面讲解HTTP服务器搭建

用ESP32搭建本地Web服务器:从零开始的实战指南你有没有想过,一块不到30块钱的ESP32开发板,其实可以变成一个真正的“迷你网站主机”?不用买服务器、不依赖云平台,只要连上家里的Wi-Fi,它就能在局域网里提供…

作者头像 李华