【生活现场】从搬家到容器技术docker应用场景解析

Docker 技术分享 Docker 技术分享 通俗了解 Docker 从搬家到容器技术docker应用场景解析【生活现场】 总结: 程序和环境一起打包发布,保证开发和生产环境一致,避免因环境因素导致的错误 dockerfile 记住发布步骤、依赖顺序,创建镜像 镜像和容器之间的关系==》对象和实例,代码和进程 代码仓库 dockerhub,类似与 github。也分私有和公有 什么是 Docker Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,它是基于 do 阅读详情


本文作者:channingbreeze 

公众号来源:互联网侦察


640?wx_fmt=jpeg


小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了。

对小史面试情况感兴趣的同学可以观看面试现场系列。


640?wx_fmt=jpeg


话说小史已经接受了A厂的offer,这不,已经在公司附近租好了房子,准备搬家过去住了。


家里的东西真是多呀,小史的很多家具都是组装起来的,现在都已经拆散放到吕老师的车上了。


就这样,吕老师开车带着小史一起去了公司附近的新住址。


开了一个多小时,终于到了新住址。一进房间,小史就忙着把心爱的电脑桌拼起来。


但是电脑桌拆起来快,装起来可不好装,几十个组件,一百多个螺丝钉,小史装了一下午,最后还发现少了几个螺丝钉。


640?wx_fmt=jpeg


【晚饭】


晚上,小史和吕老师一起吃饭。


640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg


【吕老师前传】


吕老师以前还是程序员的时候,在B厂上班,有一次一个新项目要发布上线。结果测试环境跑得好好的,生产环境死活跑不起来。


640?wx_fmt=jpeg


【docker有啥好】


640?wx_fmt=jpeg

小史:docker我用过,不过当时是因为视频教程里用的docker部署的环境,所以我也就跟着做了,其实反而觉得更麻烦了,它到底哪里好呢?

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

吕老师:这方面docker做了很多事情,比如提供了基础镜像的方式,docker官方的镜像仓库里有很多镜像,可以直接拉下来用,然后新的镜像可以以它们为基础,在上面commit新的东西。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

吕老师:同时,docker使用了镜像分层的技术,新的commit会产生新的层,可以复用一部分老的层。这样一来制作新镜像的速度还是挺快的。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

小史:我明白你的意思,这样确实制作镜像的时候可以加快速度,但是假如我要把整个环境放到另外一个机器部署,还是要拷贝整个大的镜像过去吧?

640?wx_fmt=jpeg


【dockerfile】


640?wx_fmt=jpeg

吕老师:你说的对,电脑桌不拆,直接放我车上放不下,那么能不能这样,我们拆的时候,就把哪个螺丝在哪里这些细节记录好,到时候装的时候只要按照记录顺序安装就好。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

吕老师:你看,就这个简单的文件。第一行它告诉你这个镜像基于ubuntu基础镜像,第二行告诉你这个镜像的维护者的信息,第三行的RUN就是要执行的shell命令,比如这里,是在ubuntu的基础镜像上安装一些额外的东西,第4行是镜像启动之后执行的初始命令。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg


【docker最佳实践】


640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

吕老师:其实在网络好的情况下,下载一个镜像一般来说比重新打一个镜像更快,所以最终部署都是基于镜像去部署,不会重新打镜像了。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg


【docker关键概念】


640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

吕老师:你说的没错,其实镜像有点像代码,容器有点像进程。代码是存放在硬盘上的东西,而把代码运行起来,就会形成一个进程,进程才是跑起来的程序。

640?wx_fmt=jpeg

小史:对,你这个比喻真是贴切,镜像和容器也是一样,镜像是存在硬盘上的东西,镜像运行起来,就形成一个容器,容器才是真正跑起来的程序。只不过在docker中,我们可以进入容器,做一些操作,然后再把容器中的改动提交形成一个新的镜像。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

小史:如果说镜像是代码的话,镜像仓库就有点像github了,我们写好的代码会提交到github上面进行保存和管理,方便在其他地方也能下载代码。镜像仓库也是类似的,制作好的镜像,就把它放到镜像仓库,方便其他人直接用镜像部署。

640?wx_fmt=jpeg


【笔记】


聊天结束后,小史悄悄在手机中记录下了这次的笔记。


一、容器技术docker的思考方式是,将环境一起打包镜像,避免部署时的环境问题。

二、dockerfile记录镜像的制作步骤

三、镜像、容器、仓库的概念可以类比代码、进程、github


乐于分享和输出干货的Java技术公众号:Java3y。关注即可领取海量的视频资源!

640?wx_fmt=jpeg
帅的人都关注了
不妨点一下 好看 并 分享 给朋友!


640精彩回复

2018再见,2019你好(14本书籍免费送)

一分钟学会《模板方法模式》




详细解读文字识别工具———Tesseract-OCR    在尝试破解12306验证码的时候,提前了解了一下应对各种验证码的解决方案,这里主要是学习到了面对文字图片验证码,例如亚马逊、豆瓣等平台的登录时会遇到的情况,效果还不错。 一、工具介绍 ​    Tesseract-OCR 是一款由HP实验室开发由Google维护的开源OCR(Optical Character Recognition... 阅读详情

相关推荐

揭秘《出塞》UE5+AIGC高效工作流 | 从创意到成片全流程解析

李季老师(老李头儿)在第四届瑞云大赛斩获季军的作品《出塞》的完整创作流程!

UWA—简单优化,优化简单! 767

Docker 完整卸载教程

Docker 是一种轻量级的容器化平台,可以帮助开发人员将应用程序及其依赖项打包成一个可移植的容器。但有时我们可能需要完整卸载 Docker,卸载旧版本安装新版本,或者不再需要 Docker 环境。

不会编程的攻城狮 3万+

Spring Cloud 整合(一) CRUD

Springcloud 整合之 CRUDSpringcloud介绍功能概述为什么要选用Springcloud Springcloud介绍 功能概述 实现微服务 Spring Cloud为开发人员提供了工具,以快速构建分布式系统中的某些常见模式(例如,配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁,领导选举,分布式会话,群集状态)。分布式系统的协调导致样板式样,并且使用Spring Cloud开发人员可以快速站起来实现这些样板的服务和应用程序。 为什么要选用Springcloud

Kerwin-Lin的博客 1501

只需三步,完美卸载Docker

背景:因为网络安全问题,Docker存在重大安全漏洞,安全组要求卸载Docker,下面就分享卸载额步骤。

东皋长歌的专栏 6万+

告别调试烦恼:用Lattice Diamond手把手教你JTAG烧录FPGA(附SRAM/Flash模式详解)

本文详细介绍了使用Lattice Diamond软件进行JTAG烧录FPGA的全流程,包括SRAM临时调试和Flash固化的核心区别。从环境准备、硬件连接到文件准备、烧录模式选择,再到典型问题排查和高级技巧,手把手教你快速掌握FPGA烧录技术,提升开发效率。

weixin_42569329的博客 495

SAP UI5 和 Fiori 的一些小技巧合集 - 持续更新中

本文介绍笔者从事 SAP UI5 和 Fiori 开发多年以来,积累的一些经验和小技巧。会保持更新。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 913

Docker卸载和安装

先看下当前版本docker -v当前镜像。

LYX3693的博客 8373

052、联发科Imagiq HyperEngine架构适配:天玑9000/9200的ISP多核并行调度与Tuning Toolkit调优案例

摘要: 项目组在适配联发科天玑9200的Imagiq 890 ISP架构时,遇到多摄预览功耗过高、帧率不稳等问题。通过分析多核调度机制,调整辅核QoS通道、优化AI-ISP协同模式(采用FREERUN+运动补偿),并利用Tuning Toolkit的Pipeline Viewer动态分配负载,最终降低功耗30mA、提升画质。关键经验包括:避免多核带宽冲突、合理配置动态时钟策略,以及统一校准参数版本管理。天玑9000/9200的HyperEngine架构需优先理解多核协同逻辑,再针对性调优,否则易引发场景兼容

zzfmlxs的博客 36

(Linux)Docker完全卸载与Docker安装和Docker常用命令

​。

qq_46264836的博客 1万+

电子元器件-接口电路篇:RS-232、RS485/422、I2C、SPI、USB、网口

以上规定说明了RS-232C 标准对逻辑电平的定义。对于数据(信息码):逻辑“1”的传输的电平为-3V~-15V,逻辑“0”传输的电平为+3V~+15V;对于控制信号;接通状态(ON)即信号有效的电平为+3V~+15V,断开状态(OFF)即信号无效的电平为-3V~-15V,也就是当传输电平的绝对值大于3V 时,电路可以有效地检查出来;

qq_60226558的博客 887

从 VL02N 拣配到 ABAP 自动化,读懂 SD_DELIVERY_UPDATE_PICKING 的位置和风险

文章摘要:SAP SD模块中,SD_DELIVERY_UPDATE_PICKING函数模块用于处理出库交货单的拣配确认,更新交货项目的拣配数量。该函数适用于未启用WM/EWM的传统SD流程,能确保拣配状态与标准交货处理逻辑同步,比直接修改数据库更安全。但在S/4HANA Cloud等新环境中,应优先使用API_OUTBOUND_DELIVERY_SRV等公开发布接口。使用该函数时需注意参数完整性和按交货单整体处理的原则,避免逐项提交导致的数据不一致问题。(149字)

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 245

卸载Docker

一、准备工作: 1.杀死docker有关的容器: docker kill $(docker ps -a -q) 2.删除所有docker容器: docker rm $(docker ps -a -q) 3.删除所有docker镜像: docker rmi $(docker images -q) 4.停止 docker 服务: systemctl stop docker 5.删除docker相关存储目录:(分别进行执行以下四个命令) 1.rm -rf /etc/docker 2.rm -rf /run

qq_44028724的博客 5万+

锂电池剩余使用寿命预测(RUL) | 基于Stacked-LSTM-Autoencoder的锂电池寿命多变量多步预测(Tensorflow)

锂电池剩余使用寿命预测(RUL) | 基于Stacked-LSTM-Autoencoder的锂电池寿命多变量多步预测(Tensorflow)

前程算法屋的博客 851

狂神说docker笔记_【生活现场】从搬家到容器技术docker应用场景解析

专注于Java领域优质技术,欢迎关注来自: 互联网侦察 文章已授权小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了。话说小史已经接受了A厂的offer,这不,已经在公司附近租好了房子,准备搬家过去住了。家里的东西真是多呀,小史的很多家具都是组装起来的,现在都已经拆散放到吕老师的车上了。就这样,吕老师开车带着小史一起去了公司附近的新住址。开了一个...

weixin_39651735的博客 90

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

漫画 | 从搬家到容器技术 Docker 应用场景解析

作者 |channingbreeze责编 | 仲培艺小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了。生活现场话...

优快云资讯 3588

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Docker 完全卸载指南:从基础移除到深度清理

彻底卸载 Docker 需遵循 “停止服务→移除组件→清理残留→验证结果备份数据:卸载前导出重要镜像、容器和卷。分系统操作:根据 Linux、Windows、macOS 选择对应步骤,避免跨系统套用命令。深度清理:重点删除(Linux)、WSL分发(Windows)、~/.docker(全系统)等残留目录。验证卸载:通过命令检查、文件扫描和服务状态确认 Docker 完全移除。通过本文方法,可确保 Docker 及其组件被彻底清理,为系统重装或工具切换扫清障碍。

zqmgx13291的博客 2万+

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

【Docker、运维】如何卸载docker

卸载Docker的方法取决于你的操作系统。以下是在一些常见操作系统中卸载Docker的指导。确保在执行这些步骤之前,备份任何重要数据,包括Docker容器和镜像,以防万一需要以后恢复。这些步骤将彻底卸载Docker并清除与之相关的大部分数据和配置文件。

不纯正的逼格的专栏 5305

docker的安装和卸载

docker卸载与离线安装docker19.03版本

qq_32786223的博客 7813

Docker安装与完全卸载(这一篇绝对够用)

这个命令会停止所有容器,包括正在运行的容器和已经停止的容器。

doublepg13的博客 9万+

Docker - 卸载

Docker - 目录 Docker - 卸载一、Docker 卸载1. 关闭 docker2. 卸载 docker3. 删除 docker 文件 一、Docker 卸载 1. 关闭 docker 查看 docker 服务: systemctl status docker.service 输出内容: ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/do.

个人纪录、总结! 6728

彻底卸载docker

步骤一:停止Docke 步骤二:删除Docker软件包 步骤三:删除Docker目录和文件 步骤四:删除Docker存储库

skyman30的博客 6202

彻底卸载Docker全攻略:macOS/Win/Linux

说明:仅适用办公终端卸载 Docker Desktop 用本文针对 macOS、Windows 和 Linux 三大主流操作系统,提供一套经过验证的完整卸载方案,涵盖图形界面操作与终端指令双重路径,确保从应用程序主体到隐藏配置文件的全面清理。以下操作指南将帮助您像拆卸精密仪器般,逐层剥离 Docker 在系统中的每一处痕迹,为后续环境部署奠定纯净的基础平台。

weixin_44623450的博客 1万+

如何卸载 Docker

本文将指导您如何在 Ubuntu 或类似基于 Debian 的 Linux 发行版上彻底卸载 Docker。如果您在使用过程中遇到问题或需要进一步的帮助,请随时联系技术支持。

sinat_38424109的博客 1834

docker详细看这一篇就够了!(docker安装、docker卸载、docker拉取)

v /data/mongodb/initdb:/docker-entrypoint-initdb.d # 通过/docker-entrypoint-initdb.d/将更复杂的用户设置显式留给用户 当容器首次启动时它会执行/docker-entrypoint-initdb.d 目录下的sh 和js脚本。docker run -p 9000:9000 --name minio \ # run 运行容器 -p 将容器的9000,9000端口映射到主机的9000,9000端口 --name 容器运行的名。

weixin_63710625的博客 4581

详解Linux系统下Docker的完整卸载流程:从实战操作到原理剖析

本文详细介绍了在CentOS 7系统中完全卸载Docker的完整流程。首先阐述了卸载Docker的必要场景,包括版本升级、资源清理、环境迁移和故障排查。然后重点讲解了卸载前的准备工作,包括系统版本确认、数据备份和状态检查。核心卸载流程分为五个关键步骤:停止Docker及相关服务、禁用开机自启、卸载核心组件、清理残留文件和验证卸载结果。特别强调了彻底卸载的重要性,避免因残留文件导致的环境冲突或资源占用问题。通过这一标准化流程,可确保Docker被完整移除,为后续系统维护或新版本安装奠定基础。

Flying_Fish_roe的博客 3319
上一篇: 2018再见|2019你好
下一篇: 一分钟学会《模板方法模式》
Java3y
Java3y 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄9年 1万+粉丝 509原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值