docker版本号查询(docker lastest 怎么查具体版本号)

docker版本号查询(docker lastest 怎么查具体版本号)在命令之后加上 help 即可查看帮助 列出本地主机上的镜像 docker images 搜索镜像 docker search 下载镜像 docker pull 删除镜像 docker rmi 说明 有镜像才能创建容器 这里使用 centos 的镜像来测试 就是虚拟一个 centos 新建容器并启动 列出所有运行的容器 退出容器 启动 停止容器 删除容器 后台启动容器

大家好,我是讯享网,很高兴认识大家。



在命令之后加上 –help 即可查看帮助

列出本地主机上的镜像

docker images

搜索镜像

docker search

下载镜像

docker pull

删除镜像

docker rmi

说明:有镜像才能创建容器,这里使用 centos 的镜像来测试,就是虚拟一个 centos !

新建容器并启动
列出所有运行的容器
退出容器
启动/停止容器

删除容器

后台启动容器
查看日志
查看容器中运行的进程信息,支持ps命令参数
查看容器/镜像的元数据
进入正在运行的容器
从容器拷贝文件到主机上
小结
Docker 安装Nginx

思考问题:我们每次改动nginx文件,都需要进入容器内部,十分麻烦。是否可以在容器外部提供一个映射路径,达到在容器修改文件名,容器内部就可以自动修改?-v,数据卷!

docker安装tomcat

思考问题:我们以后要部署项目,如果每次都要进入容器十分麻烦。要是可以在容器外部提供一个映射路径,webapps,我们在外部防止项目,就自动同步到内部就好了!

部署es+kibana

思考:如何使用kibana链接es?

  • portainer(先用这个)
  • Rancher(CI/CD再用)

什么是portainer?

Docker图形化界面管理工具,提供一个后台面板供我们操作!

访问外网:8088

登录

Username:admin

Password:

因为我们是本地启动的docker,所以选择连接本地即可。

一般不会用到,玩玩就好~

镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含 运行某个软件所需的所有内容,包括代码、运行时、库、环境变量和配置文件。

所有的应用,直接打包docker镜像,就可以直接跑起来!

如何得到镜像:

  • 从远程仓库下载
  • 拷贝
  • 自己制作一个镜像DockerFile

UnionFS (联合文件系统)

UnionFS(联合文件系统):Union文件系统(UnionFS)是一种分层、轻量级并且高性能的文件系统, 它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系 统下(unite several directories into a single virtual filesystem)。Union 文件系统是 Docker 镜像的基 础。镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。

特性:一次同时加载多个文件系统,但从外面看起来,只能看到一个文件系统,联合加载会把各层文件 系统叠加起来,这样最终的文件系统会包含所有底层的文件和目录

Docker镜像加载原理

docker的镜像实际上由一层一层的文件系统组成,这种层级的文件系统UnionFS。


讯享网

bootfs(boot file system)主要包含bootloader和kernel, bootloader主要是引导加载kernel, Linux刚启 动时会加载bootfs文件系统,在Docker镜像的最底层是bootfs。这一层与我们典型的Linux/Unix系统是 一样的,包含boot加载器和内核。当boot加载完成之后整个内核就都在内存中了,此时内存的使用权已 由bootfs转交给内核,此时系统也会卸载bootfs。

rootfs (root file system) ,在bootfs之上。包含的就是典型 Linux 系统中的 /dev, /proc, /bin, /etc 等标 准目录和文件。rootfs就是各种不同的操作系统发行版,比如Ubuntu,Centos等等。

平时我们安装进虚拟机的CentOS都是好几个G,为什么Docker这里才200M?

对于一个精简的OS,rootfs 可以很小,只需要包含最基本的命令,工具和程序库就可以了,因为底层直 接用Host的kernel,自己只需要提供rootfs就可以了。由此可见对于不同的linux发行版, bootfs基本是一 致的, rootfs会有差别, 因此不同的发行版可以公用bootfs。

虚拟机是分钟级别,而容器是秒级的。

分层的镜像

我们可以去下载一个镜像,注意观察下载的日志输出,可以看到是一层一层的在下载!

思考:为什么Docker镜像要采用这种分层的结构呢?

最大的好处,我觉得莫过于是资源共享了!比如有多个镜像都从相同的Base镜像构建而来,那么宿主机 只需在磁盘上保留一份base镜像,同时内存中也只需要加载一份base镜像,这样就可以为所有的容器服 务了,而且镜像的每一层都可以被共享。

查看镜像分层的方式可以通过 docker image inspect 命令!

理解:

所有的 Docker 镜像都起始于一个基础镜像层,当进行修改或增加新的内容时,就会在当前镜像层之上,创建新的镜像层。

举一个简单的例子,假如基于 Ubuntu Linux 16.04 创建一个新的镜像,这就是新镜像的第一层;如果在该镜像中添加 Python包,就会在基础镜像层之上创建第二个镜像层;如果继续添加一个安全补丁,就会创建第三个镜像层。

该镜像当前已经包含 3 个镜像层,如下图所示(这只是一个用于演示的很简单的例子)。

在添加额外的镜像层的同时,镜像始终保持是当前所有镜像的组合,理解这一点非常重要。下图中举了一个简单的例子,每个镜像层包含 3 个文件,而镜像包含了来自两个镜像层的 6 个文件。

上图中的镜像层跟之前图中的略有区别,主要目的是便于展示文件。

下图中展示了一个稍微复杂的三层镜像,在外部看来整个镜像只有 6 个文件,这是因为最上层中的文件 7 是文件 5 的一个更新版本。

这种情况下,上层镜像层中的文件覆盖了底层镜像层中的文件。这样就使得文件的更新版本作为一个新镜像层添加到镜像当中。

Docker 通过存储引擎(新版本采用快照机制)的方式来实现镜像层堆栈,并保证多镜像层对外展示为统一的文件系统。

Linux 上可用的存储引擎有 AUFS、Overlay2、Device Mapper、Btrfs 以及 ZFS。顾名思义,每种存储引擎都基于 Linux 中对应的文件系统或者块设备技术,并且每种存储引擎都有其独有的性能特点。

Docker 在 Windows 上仅支持 windowsfilter 一种存储引擎,该引擎基于 NTFS 文件系统之上实现了分 层和 CoW[1]。

下图展示了与系统显示相同的三层镜像。所有镜像层堆叠并合并,对外提供统一的视图。

特点

Docker镜像都是只读的,当容器启动时,一个新的可写层被加载到镜像的顶部!

这一层就是我们通常说的容器层,容器之下的都叫镜像层!

实战测试

学习方式说明:理解概念,但是一定要实践,最后实践和理论相结合一次搞定这个知识。

docker的理念回顾

将应用和环境打包成一个镜像!

但是如果数据都在容器中,那么我们容器删除,数据就会丢失!

需求:数据可以持久化!例如MySQL数据可以存储在本地

容器之间可以有一个数据共享的技术。Docker容器中产生的数据,可以同步到本地。

这就是卷技术!目录的挂载,将我们容器内的目录,挂载到Linux上面!

总结:容器的持久化和同步操作!容器间也是可以数据共享!

方式一:直接使用命令来挂载 -v

这里有一点要注意,windows中在wsl2方式下,windows上的docker是运行在Windows10中的linux的虚拟机中的,因此需要去虚拟机中查找。

在借鉴了一篇博客(地址在这)之后,得到了进入虚拟机的文件系统查找docker的文件的方法。

在电脑资源管理器访问以下指令可以进入.vhdx中 \wsl\(docker-desktop \wsl\)docker-desktop-data

在资源管理器里可以访问数据卷 # 安装配置MySQL,需要有密码

\wsl$docker-desktop-dataversion-pack-datacommunitydockervolumes

另外,如果需要访问windows中的磁盘文件,可以通过/mnt/c(c盘)访问到,因此才windows中映射到桌面的某个文件夹的路径就如上面的命令所示。

挂载了之后这两个路径就同步了。但是还是会占用两倍存储

测试

在docker容器中添加文件

在主机中添加文件

停止容器,在主机文件夹中修改文件

删除容器,新建一个容器,使用同样的路径映射

这就是同步的过程,双向绑定。

好处:我们以后修改只需要在本地修改即可,容器内会自动同步!

思考:MySQL的数据持久化问题 data

小讯
上一篇 2025-05-07 22:54
下一篇 2025-05-08 14:03

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/167242.html