docker简介

1、docker为什么出现

传统观念:程序即应用,但是当开发人员只把源代码发给运维人员时,会造成很多环境以及版本不匹配的问题。为了解决该问题,docker出现了,docker容器把源代码以及所需的文件+环境+版本.....全部打包成一个镜像,可以做到一次镜像,处处运行。就好比搬家,原先我们只是把家里的东西(源代码)都打包换到另一个地方,现在我们搬楼,把其所处的环境等一下子都搬走。

2、docker是什么

docker是一个软件容器,build,ship and run any app,anywehere。

我们可以将应用打包成镜像,通过镜像成为运行在docker容器上的一个实例。docker容器在任何操作系统上都是一致的,这就可以实现跨平台,跨服务器。

3、容器与传统虚拟机的区别

传统虚拟机 占用内存大,启动慢,因为传统虚拟机需要加载一整个完整的操作系统,之后在该操作系统上运行程序。

但是容器就不一样了,容器不是一个完整的操作系统,而是对进程的隔离,容器不需要一整个操作系统,只需要软件所需的库资源和设置即可,我们可以将软件所需的所有资源打包,运行在一个隔离的容器中即可。

对比:

4、docker 三要素

镜像,容器,仓库

镜像:就是一个模板,我们可以根据镜像来实例化出一个个docker实例,类似于java中的类模板

容器:根据镜像来实例化出一个个实例,类似于java中new出来的实例化对象。

仓库:存放镜像的位置,我们可以把镜像push到仓库中,需要时再从仓库中拉下来。

我们可以在本地主机上直接docker一个镜像,然后直接实例化多个容器,如果本地上没有,可以去docker hub上pull,在本机上run。

5、帮助启动式命令

6、docker镜像命令

6.1 docker images

查看本地镜像 各个选项说明:

docker images -a 列出所有镜像的信息 docker images -q 列出所有镜像的id

搜索某个镜像,如果本地里没有,就回去docker hub中寻找

各个选项说明:

可以只罗列出前几条:(默认25条)

如罗列出hello-world 镜像中的前5条

docker search --limit 5 hello-world

结果:

6.3 docker pull xxx镜像名称 【:TAG】

将仓库中的镜像拉到本地,如果不加标签,就是最新版本

6.4 docker system df

查看镜像/容器/数据卷所占的空间

6.5 docker rmi xxx镜像名称

移除某个镜像,可以强制remove docker rmi -f xxx1 xxx2 可以同时移除多个。

移除所有镜像

6.6 虚悬镜像

即 仓库源和tag 都为none 的镜像

相关推荐
zmsup15 分钟前
Agent 上下文调优:结合 OpsArk 运维智能体,设计模型每一步真正需要的信息
运维·agent·上下文压缩·运维智能体·上下文调优
吴声子夜歌3 小时前
Nginx应用与运维——Nginx负载均衡应用实战(二)
运维·nginx·负载均衡
lisanmengmeng3 小时前
NRPE 添加命令(一)
linux·运维·服务器
pt10433 小时前
CML网络仿真入门-2:使用CML模拟网络实验环境
运维·网络协议
沫璃染墨4 小时前
《从零入门Linux系统篇(五十七):线程篇·十——生产者消费者模型进阶:从环形缓冲区到POSIX信号量》
linux·运维·服务器·开发语言·c++·系统架构·信号处理
HAHAXX85 小时前
电商RPA批量上架通用方案:一套流程如何同时跑通拼多多、抖店、淘宝和跨境平台
java·运维·rpa
零基础1235 小时前
LLM Agent 驱动的物模型构建:从设备手册到边缘接入的自动化实践
运维·人工智能·经验分享·python·自动化
更深兼春远6 小时前
第2篇:Dify 部署保姆级教程:用 Docker跑起来
docker·容器·dify
程序猿老A6 小时前
从入门型到企业型:云服务器开放共享型到独享型规格升级
运维·服务器
Ruiery7 小时前
Linux 6.6内核 CPU 深度解析(九):时钟与 TSC — 内核怎么从 PIT/HPET 切到 TSC
linux·运维·服务器