docker入门(镜像)
Docker镜像是一个只读的docker容器的模版,含有启动docker容器所需的文件系统结构及其内容。这个文件系统就是rootfs。rootfs是Docker容器在启动时内部进程可见文件,即docker容器的根目录,rootfs通常包含一个操作系统运行所需的文件系统。如一个Unix系统中的/usr/bin、/lib/tmp等等。
特点
分层机制。
方便管理。
体积小,直接使得docker在使用中占用资源小。
Image特性-分层
Aufs:Docker 镜像采用分层的方式构建,每个镜像都由一系列的“镜像层”组成。分层结构是docker镜像如此轻量的重要原因,当需要修改容器镜像内的某个文件时,只需要对最上方的读写层进行变动,不覆写下层已有的系统文件。
docker inspect命令查看docker镜像详细信息
Image特性-写时复制
Docker镜像使用写时复制(copy-on-write)策略,在多个容器间共享镜像,每个容器在启动的时候并不需要复制一镜像文件,而是将所有镜像层以只读的方式挂载到一个挂载点,在再上面覆盖一个可读写的容器层。当写入数据时,会把变化的文件内容写到可读写层。
Image特性-内容寻址
在dockerl.10版本后,引入一个重要的特性内容寻址存储机制。新模型对镜像层的内容计算检验和生成一个哈希值,并以此哈希值作为镜像层的唯一标志。
Image特性-联合挂载
联合挂载(union filesystem)技术可以在一个挂载点同时挂载多个文件系统,将挂载点的原目录与被挂载内容进行整合,使得最终可见文件系统将会包含整合之后的各层的文件和目录。
Commit方式制作镜像
语法
docker commit [container的ID] [新的image_name]
过程
运行一个容器实例
docker run -it --name httpd centos:latest /bin/bash //httpd为实例容器名称
容器内安装httpd
yum -y install httpd
制作镜像
docker commit 容器名称 centos:httpd
Build方式制作镜像
通过使用dockerfile可以自定义属于自己的镜像。Dockfile是一种被Docker程序解释的脚本。Dockerfile有自己书写格式和支持的命令,Dockex程序解决这些命令间的依赖关系。
Docker程序将读取Dockerfile,根据指令生成定制的image。它明确的表明image是怎么产生的。
Dockerfile 指令选项
FROM #指定构建镜像的基础源镜像。
MAINTAINER #指定创建镜像的用户。
RUN #是在docker build时执行的命令。
COPY #复制本地主机文件到镜像中。
ADD #复制本地主机文件到镜像中,压缩包会被解压。
CMD #在docker run运行时执行的命令。
EXPOSE #仅仅只是声明端口。
ENV #设置环境变量,且只能设置一个。
ENTRYPOINT #配置容器启动后执行的命令。
VOLUME #定义匿名数据卷。
WORKDIR #指定工作目录。
USER #用于指定执行后续命令的用户和用户组。
ONBUILD #用于延迟构建命令的执行。
语法
docker build -t 镜像名:镜像TAG Dockerfile文件所在路径
过程
创建工作目录
mkdir /docker-build && cd /docker-build
创建Dockerfile文件
vim Dockerfile #写上之前的例子
制作镜像
docker build -t centos:httpd ./
docker入门(镜像)相关推荐
- docker入门,镜像,容器,数据卷,dockerfile,docker网络,springboot微服务打包docker镜像[狂神yyds]
docker学习大纲 docker概述 docker安装 docker命令 镜像命令 容器命令 操作命令 - docker镜像 容器数据卷 dockerfile docker网络原理 IDEA整合do ...
- Docker入门系列之二:使用dockerfile制作包含指定web应用的镜像
2019独角兽企业重金招聘Python工程师标准>>> 在前一篇文章:Docker入门系列之一:在一个Docker容器里运行指定的web应用 里, 我们已经成功地将我们在本地开发的一 ...
- docker ubuntu镜像_Docker 入门指南 | Linux 中国
该教程包含了如何创建一个新的 Docker 容器,如何运行该容器,如何从现有的 Docker 容器中创建自己的 Docker 镜像等 Docker 的一些基础知识.操作.-- Sk 在我们的上一个教程 ...
- docker 镜像修改的配置文件自动还原_原创 | 全网最实在的docker入门教程四
作者:潘吉祥 上一篇我们学习了如何使用Dockerfile制作自己的镜像,不过这种方式更像纯粹的运维方式,作为开发者来说,未免有些小繁琐,一个不小心写错些命令就执行失败,我们还不知道错误在哪,这着实有 ...
- Docker入门系列之三:如何将dockerfile制作好的镜像发布到Docker hub上
这个系列的前两篇文章,我们已经把我们的应用成功地在Docker里通过nginx运行了起来,并且用dockerfile里制作好了一个镜像. Docker入门系列之一:在一个Docker容器里运行指定的w ...
- docker镜像启动后端口号是多少_RSS、智能家居、个人博客、维基百科……Docker 入门指南...
如果你购买过 VPS 云主机,那么或多或少,你都可能听说过 Docker.如果你从未听说过 Docker,那么本文可能能够为你开启新世界. 利用 Docker,你能够非常轻松地部署各类服务,无论是个人 ...
- Docker入门教程 Part 1 基础概念 - 镜像、容器、仓库
前言 第一篇笔记,先总体介绍Docker,及它与虚拟机技术的区别,最后再介绍Docker的最基础的三大组件概念. 本文内容主要参考Docker官方网站以及中文书籍Docker - 从入门到实践. 我正 ...
- Docker入门之使用镜像(二)
文章目录 前言 什么是Docker镜像 如何获取镜像 查看镜像信息 删除单个镜像 批量删除镜像 导出与导入镜像 清理镜像 总结 前言 Docker 中大部分的操作都是围绕三个核心概念:镜像.容器.仓库 ...
- Docker 入门(4)镜像与容器
1. 镜像与容器 1.1 镜像 Docker镜像类似于未运行的exe应用程序,或者停止运行的VM.当使用docker run命令基于镜像启动容器时,容器应用便能为外部提供服务. 镜像实际上就是这个用来 ...
- docker 入门 —— docker 镜像命令
docker 镜像命令 文章目录 常用镜像操作命令 常用容器操作命令 1.`docker images` 列出本地主机上的镜像 1.1.参数: 2.`docker search 镜像名字` 搜索镜像 ...
最新文章
- 姚班学霸陈立杰:16岁保送清华,18岁拿下IOI世界冠军,现摘得FOCS 2019最佳学生论文...
- Linux Anaconda断网创建虚拟环境
- 让云×××—微软虚拟化远程直播
- Spring MVC 验证码
- 基于Matlab----RSSI测距定位技术性能仿真
- SQL Serevr 2012 安装教程
- 手机上不了网怎么连接到服务器未响应,手机上不了网怎么办 手机上不了网解决方法【设置步骤】...
- Node.js十年,你大爷还是你大爷
- python做性能测试框架_python常用web框架简单性能测试结果分享(包含dja
- 今天在隧道一车上的一幕
- 双网卡同时上内外网的方法
- 哈夫曼编码、哈夫曼树
- 信息检索(IR)—链接分析
- CSS常见布局的几种实现方式(面试常考)
- 怎样修改论文格式-人工智能实现快速修改
- 一组你们心心念念的 Windows 10 主题壁纸,请签收!
- go语言环境的安装配置
- iOS自带定位获取地址
- 【计算方法】迭代法(线性方程组求解)
- html程序国庆节祝福,2019国庆节祝福语送给朋友微信
热门文章
- 秒懂设计模式之工厂方法模式(Factory Method Pattern)
- 网页导出Excel文件并下载
- 人工智能和机器学习在改善客户体验方面的应用
- 【Microsoft Azure 的1024种玩法】六十.通过Azure Virtual Machines快速搭建个人Ghost博客系统
- 用matlab画双坐标图,怎么灵活改变坐标轴颜色,刻度,字体等
- 红米k30至尊纪念版和华为p30pro的区别 哪个好
- [Unity3D]面试题集锦
- 别找了,完整代码在这||校园导游咨询系统
- nginx防止恶意域名解析与反代80与443端口完整版
- burpsuite第一次爬行扫描