通过Dockerfile创建镜像

注:这个Dockerfile一开始真的不知道是在哪来的,还以为是在官网下载下来得(当然网上也有很多dockerfile的模板,参考:https://hub.docker.com/),其实它是自己新建得一个文件,名字为Dockerfile,docker build 通过调取dockerfile的文件内容来创建新的镜像,这个dockerfile感觉有点像linux的本地源/dev/sr0的功能。

本实验是给基础(base)镜像安装一个vim的命令,然后制作成新的镜像

首先制作dockerfile

通过docker build的命令去创建新的镜像,-t参数是新镜像的名字,    .  dockerfile文件的位置  . 是当前位置,可以用  -f  来制定dockerfile的位置

创建过程:docker会将dockerfile所在的目录下的所有文件发送给docker服务器,所以使用build context就要谨慎了,最好不要将多余的文件放到build context,尤其是不要把 /  或者 /usr 作为build context ,否则创建镜像的过程会非常缓慢或者创建失败。

dockerfile中的ADD   COPY等命令可以将build context中的文件添加到镜像

创建成功

查看新的镜像

查看dockerfile执行过程,docker history向我们展示了镜像从上到下的分层。

简述Docker的过程:

1.运行一个base基础镜像 (FROM)

2.执行命令,对容器进行修改

3.保存一层新镜像(和docker   commit命令)

4.继续执行dockerfile里面的命令

5.重新保存一层新的镜像

6.继续执行命令,直到命令全部执行完毕,每执行一个命令都会保存一个新的镜像,直至最后的一个。

centos7下安装docker(3.2创建镜像build)的更多相关文章

  1. centos7下安装docker与镜像加速

    1.背景 centos7下安装docker 2.安装 第一步:检查是否为centos7版本 第二步:依赖环境安装 执行如下两个命令: yum -y install gcc yum -y install ...

  2. docker(一) Centos7下安装docker

    docker(一) Centos7下安装dockerdocker(二) windows10下安装dockerdocker(三) 镜像和容器常用命令 docker(四) 使用Dockerfile构建镜像 ...

  3. CentOS7下安装docker(Docker系列1)

    CentOS7下安装docker 系统要求 为了安装docker,需要准备 64-bit的CentOS 7 删除非官方的Docker包 yum的仓库中有一个很旧的Docker包, 现在Docker官方 ...

  4. centos7 下安装docker报错:You could try using...

    搞了台VPS,想要装docker,发现死活装不上,各种报错.之前系统是centos6,发现官方现在已经不支持centos6了,遂升级到centos7,然后还是出现下面这个错误. Error: Pack ...

  5. centos7下安装docker(3.3创建镜像--修改dockerfile)

    1.我们在制作dockerfile的时候可能有些命令无法执行,导致镜像无法创建成功,这时我们可以修改dockerfile,从而达到我们的目的 查看Dockerfile内容 创建新的镜像,失败 Dock ...

  6. centos7下安装docker(3.1创建镜像commit)

    docker commit创建镜像 步骤:1.运行容器 2.修改容器 3.将容器保存为镜像 1. 注:-it是以交互模式进入容器,并打开终端 2.安装一个vim进行修改镜像 yum install - ...

  7. centos7下安装docker(21docker swarm集群创建)

    创建swarm集群: 实验环境:盗图 swarm-manager是manager node,swarm-worker1和swarm-worker2是worker node. 所有节点的docker版本 ...

  8. centos7下安装docker(6镜像总结)

    学了很长时间的镜像了,从镜像的分层,缓存的特性,到制作镜像:通过docker commint和docker build创建,再到制作dockerfile以及dockerfile中常用的参数FROM,M ...

  9. centos7下安装docker(2镜像)

    docker最小的镜像——hello-world 下载镜像  docker pull docker pull hello-world 查看镜像  docker images docker images ...

随机推荐

  1. 【JAVA WEB教程】jsp环境搭建(eclipse)【详细+图文】

    下载JDK(如果你的系统是64位的,那么就下载64位版本的)   然后安装,点击下一步   再点击下一步   安装成功   下载针对JAVA EE的Eclipse(如果你的系统是64位的,那么就下载6 ...

  2. [转]Angular——提示框

    本文转自:https://blog.csdn.net/whm18322394724/article/details/80177950 版权声明:本文为博主原创文章,未经博主允许不得转载. https: ...

  3. 在服务器上搭建wordpress个人博客 php7.2+nginx+mysql+wordperss

    买了台VPS,准备搭建一个博客.用过几个博客框架还是觉得Wordpress好用.主题多,插件也非常的便利,而且大多还免费开源.搭建也很简单,其实安装好php+mysql+nginx+wordpress ...

  4. Java使用foreach语句对数组成员遍历输出

    /** * 本程序使用foreach语句对数组成员进行遍历输出 * @author Lei * @version 2018-7-23 */ public class ForeachDemo { pub ...

  5. MATLAB indexing question

    Question: I have a matrix, for example A = [ 1 2 3; 4 5 6; 7 8 9] ; and a vector of size 1x3 which s ...

  6. JQuery的事件委托;jQuery注册事件;jQuery事件解绑

    一.事件 ①事件委托:就是给子元素的父元素或者祖先元素注册一个事件,但是事件的执行者是子元素,委托事件的好处是能够给动态创建出来时元素也加上事件. ②简单事件:就是给自己注册事件自己执行动态创建出来的 ...

  7. Python3.4:splinter or traceback

    tickts.py: #tickts.py #2018-01-22 #python 3.4 Eclipse IDE from splinter.browser import Browser from ...

  8. GIS基础知识

    投影转换 若两者地理坐标系不一致,需要设置七参数进行转换. 不同地方,七参数大小不一样,需要通过计算得到.

  9. Quill编辑器IOS下无法获取焦点的解决方法

    造成Quill-Editor无法获取焦点的大部分原因是Css的问题,罪魁祸首: *{ -webkit-user-select:none; } ios下直接造成无法获取焦点. 解决方法,覆盖以上css设 ...

  10. c#事务处理(sqlTransaction)

    事务: /// <summary> /// 删除考勤 /// </summary> /// <param name="dto">Id</p ...