Docker容器技术实战-1

1.docker容器

Docker容器技术实战-1_第1张图片

docker就好比传统的货运集装箱

每个虚拟机都有独立的操作系统,互不干扰,在这个虚拟机里可以跑任何东西 如应用 文件系统随便装,通过Guest OS 做了一个完全隔离,所以安全性很好,互不影响

容器 没有虚拟化层,直接共享操作系统内核,不同的容器共享是同一个宿主机内核

Docker容器技术实战-1_第2张图片

Docker容器技术实战-1_第3张图片Docker容器技术实战-1_第4张图片Docker容器技术实战-1_第5张图片

容器如何工作?

cs 架构 客户端通过docker这个客户端命令 发送指令,由docker引擎进行响应,去本地查询下有没有这个镜像,如果有镜像,直接创建容器。如果没有镜像,从远程Registy仓库中,默认官方直接下载镜像到本地运行容器

2.创建第一个docker

Docker容器技术实战-1_第6张图片Docker容器技术实战-1_第7张图片

安装docker-ce

Docker容器技术实战-1_第8张图片

启动服务

激活内核选项+重启服务

Docker容器技术实战-1_第9张图片Docker容器技术实战-1_第10张图片Docker容器技术实战-1_第11张图片

启动容器

Docker容器技术实战-1_第12张图片

显示激活的容器

访问

Docker容器技术实战-1_第13张图片Docker容器技术实战-1_第14张图片Docker容器技术实战-1_第15张图片Docker容器技术实战-1_第16张图片Docker容器技术实战-1_第17张图片Docker容器技术实战-1_第18张图片

02 docker 镜像

Docker容器技术实战-1_第19张图片

每个镜都有很多的层 每个层都是独立的 这些层在本地保留一份就行。如果有多个镜像共享一个层,只要保存一份,这样避免了冗余,避免了占用磁盘空间,避免了占用带宽。如果要下载一个镜像,镜像里有很多层,这个层已经有了,就不需要下载,这样,节省了网络带宽

镜像在上传仓库的时候,如果仓库端也有相同的镜像层的时候,只需上传他没有的层就可以了

分层结构的最大好处:共享资源

Docker容器技术实战-1_第20张图片

镜像层是只读的,修改的东西只保存在容器层,当保存的时候,容器层就会保存成新的镜像层,一个镜像最多127 层,

docker 从上往下会依次查找文件,这样修改的内容就会被优先读取到

镜像的构建

docker commint 构建镜像三部曲:运行容器  修改容器   将容器保存为新的镜像

缺点:效率低,可重复性弱  容易出错

使用者无法对镜像进行审计,存在安全隐患

所有的镜像文件都在这个目录里 不能随意删除

Docker容器技术实战-1_第21张图片

Docker容器技术实战-1_第22张图片

Docker容器技术实战-1_第23张图片

Docker容器技术实战-1_第24张图片

这种方式不利于安全审计

构建镜像

Docker容器技术实战-1_第25张图片

Docker容器技术实战-1_第26张图片

Docker容器技术实战-1_第27张图片

推荐使用Dockerfile这种方式

Dockerfile详解

Docker容器技术实战-1_第28张图片

Docker容器技术实战-1_第29张图片Docker容器技术实战-1_第30张图片Docker容器技术实战-1_第31张图片Docker容器技术实战-1_第32张图片Docker容器技术实战-1_第33张图片Docker容器技术实战-1_第34张图片

Docker容器技术实战-1_第35张图片Docker容器技术实战-1_第36张图片Docker容器技术实战-1_第37张图片Docker容器技术实战-1_第38张图片Docker容器技术实战-1_第39张图片

构建镜像

Docker容器技术实战-1_第40张图片Docker容器技术实战-1_第41张图片

自动删除所有已经被停止的容器

Docker容器技术实战-1_第42张图片Docker容器技术实战-1_第43张图片

查看容器详情

Docker容器技术实战-1_第44张图片

数据卷挂载

Docker容器技术实战-1_第45张图片

自动分配的IP

Docker容器技术实战-1_第46张图片

访问容器

Docker容器技术实战-1_第47张图片

这个地址不能从外面浏览器访问的,因为没有做端口映射,这是一个私有网段,不能从windows访问

03 镜像的优化

Docker容器技术实战-1_第48张图片

缩减镜像层

Docker容器技术实战-1_第49张图片

首先缩减镜像层数 绕后清理中间产物

Docker容器技术实战-1_第50张图片Docker容器技术实战-1_第51张图片

多阶段构建

Docker容器技术实战-1_第52张图片

使用最精简的基础镜像

导入基础镜像

Docker容器技术实战-1_第53张图片

Docker容器技术实战-1_第54张图片

gitehub 上搜索  nginx  distroless

Docker容器技术实战-1_第55张图片 

Docker容器技术实战-1_第56张图片Docker容器技术实战-1_第57张图片

如果有错误 查看日志

你可能感兴趣的:(docker,容器,运维)