首页 运维干货Docker中级篇

Docker中级篇

运维派隶属马哥教育旗下专业运维社区,是国内成立最早的IT运维技术社区,欢迎关注公众号:yunweipai
领取学习更多免费Linux云计算、Python、Docker、K8s教程关注公众号:马哥linux运维

Docker镜像理解

Docker镜像是什么

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

Docker镜像加载原理

UnionFs:联合文件系统

UnionFs(联合文件系统):Union文件系统(UnionFs)是一种分层、轻量级并且高性能的文件系统,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下,UnionFs联合文件系统是Docker镜像的基础,镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像
特性:一次同时加载多个文件系统,但从外面看起来,只能看到一个文件系统,联合加载会把各层文件系统叠加起来,这样最终的文件系统会包含所有底层的文件和目录

Docker镜像加载原理

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

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

简单理解:

1. 对于Docker安装OS来说:就是Docker使用了Linux本身的bootfs,只需要安装自己所需的rootfs。

2. 对于Docker安装普通镜像来说:就是Docker本身是分层下载镜像,所以可以提取出公共层镜像,进行复用。

Docker镜像的特点

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

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

Docker中级篇插图

Commit镜像

Docker容器数据卷

什么是容器数据卷

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

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

容器数据卷使用命令

挂载MySQL数据库到Liunx宿主机

此时我们使用远程连接软件会报错

Docker中级篇插图(1)

具名和匿名挂载

拓展:绑定权限

数据卷容器挂载

目的:实现多个容器间的数据同步(多个MySQL间共享数据)

DockerFile

DockerFile是用来构建Docker镜像的文件(命令参数脚本)

DockerFile构建指令

创建一个自己的CentOS镜像

  • 创建DockerFile

  • 编写DockerFile

  • 构建自己的镜像

  • 查看镜像生成历史

创建Tomcat镜像

1.准备镜像文件:Tomcat和JDK的压缩包

2.编写DockerFile

3.打包镜像

4.启动镜像

5.测试运行

Docker中级篇插图(2)

6.在宿主机的/home/fortuneteller/tomcat/test目录下创建WEB-INF目录与mt.jsp

7.在WEB-INF目录下编写web.xml文件

8.测试访问

Docker中级篇插图(3)

本地镜像上传阿里云

  1. 登陆阿里云容器镜像服务
  2. 创建命名空间
  3. 创建仓库
  4. 设置固定密码

Docker中级篇插图(4)

  1. 查看自己的推送命令

Docker中级篇插图(5)

  1. 使用推送命令完成上传

Docker中级篇插图(6)

  1. 拉取时同理根据阿里云提示命令完成即可

Docker总结

Docker中级篇插图(7)

Docker部署SpringBoot项目

1.使用Maven构建获得jar包

2.编写Dockerfile

3.上传Docker与jar包到Linux服务器

4.使用命令获得镜像

  1. 使用命令查看获取到镜像编号

  1. 启动镜像

  1. 测试访问

在浏览器输入:服务器ip:3344

原文转自:http://suo.im/5LhC1f
作者:Fortuneteller

本文链接:http://www.yunweipai.com/36956.html

网友评论comments

发表评论

电子邮件地址不会被公开。

暂无评论

Copyright © 2012-2020 YUNWEIPAI.COM - 运维派
扫二维码
扫二维码
返回顶部