Docker基本命令与使用 —— Dockerfile指令与构建(三)
一.Dockerfile指令上
1.指令格式
# Comment 注释, 以#开头
INSTRUCTION argument 以大写的指令+参数
- From
- MAINTAINER
- RUN
- EXPOSE
FROM指令
- 已经存在的镜像
- 基础镜像
- 必须是第一条非注释指令
MAINTAINER指令
RUN指令
- RUN<command> (shell模式)
- RUN ["executable", "param1", "param2" ] (exec模式)
EXPOSE指令
二.Dockerfile指令下
- CMD 在容器运行时运行的命令
- ENTERYPOINT
- ADD 设置镜像的目录和文件
- COPY
- VOLUME
- WORKDIR 镜像在构建及容器运行时的环境设置
- ENV
- USER
- ONBUILD 类似触发器的指令
CMD指令
- CMD [ "executable", "param1", "param2"] (exec模式)
- CMD command param1 param2 (shell模式)
- CMD [ "param1", "param2"] (作为ENTRYPOINT指令的默认参数)
ENTRYPOINT指令
- ENTRYPOINT [ "executable", "param1", "param2"] (exec模式)
- ENTRYPOINT command param1 param2 (shell模式)
ADD指令
- ADD <src>...<dest>
- ADD ["<src>"..."<dest>"] (适用于文件路径中有空格的情况)
COPY指令
- COPY <src>...<dest>
- COPY ["<src>"..."<dest>"] (适用于文件路径中有空格的情况)
VOLUME指令
- VOLUME ["/data"]
WORKDIR指令
- WORKDIR /path/to/workdir
ENV指令
- ENV <key> <value>
- ENV <key> <Value> ...
USER指令
- USER daemon
ONBUILD指令
- ONBUILD [INSTRUCTION]
三.Dockerfile构建过程
- 从基础镜像运行一个容器
- 执行一条指令,对容器做出修改
- 执行类似docker commit的操作,提交一个新的镜像层
- 再基于刚提交的镜像运行一个新容器
- 执行Dockerfile中的下一条指令,直至所有指令执行完毕
- docker build --no-cache
- Dockerfile 中的 ENV REFRESH_DATE 2015-04-01 之后变不再使用缓存
- docker history [image]
Docker基本命令与使用 —— Dockerfile指令与构建(三)的更多相关文章
- docker(8)Dockerfile指令介绍
前言 Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明. Dockerfile简介 Dockerfile是用来构建Docker镜像的构建文件,是由一系列 ...
- Docker容器学习梳理 - Dockerfile构建镜像
在Docker的运用中,从下载镜像,启动容器,在容器中输入命令来运行程序,这些命令都是手工一条条往里输入的,无法重复利用,而且效率很低.所以就需要一 种文件或脚本,我们把想执行的操作以命令的方式写入其 ...
- Docker Dockerfile指令
Docker 可以通过 Dockerfile 的内容来自动构建镜像.Dockerfile 是一个包含创建镜像所有命令的文本文件,通过docker build命令可以根据 Dockerfile 的内容构 ...
- Dockerfile指令学习 (转)
原文地址:http://blog.csdn.net/we_shell/article/details/38445979 Dockfile是一种被Docker程序解释的脚本,Dockerfile由一条一 ...
- Docker系列(22)- DockerFile指令说明并构建自己的centos
DockerFile常用指令 实战测试 DockerHub中99%镜像都是从这个基础镜像过来的FROM scratch,然后配置需要的软件和配置来进行构建 #创建一个自己的centos # 1.编写D ...
- docker学习笔记17:Dockerfile 指令 ONBUILD介绍
ONBUILD指令可以为镜像添加触发器.其参数是任意一个Dockerfile 指令. 当我们在一个Dockerfile文件中加上ONBUILD指令,该指令对利用该Dockerfile构建镜像(比如为A ...
- docker之Dockerfile指令介绍
Docker通过对于在Dockerfile中的一系列指令的顺序解析实现自动的image的构建 通过使用build命令,根据Dockerfiel的描述来构建镜像 通过源代码路径的方式 通过标准输入流的方 ...
- docker Dockerfile指令ADD和COPY的区别,添加目录方法
docker Dockerfile指令ADD和COPY的区别,添加目录方法 ADD指令的功能是将主机构建环境(上下文)目录中的文件和目录.以及一个URL标记的文件 拷贝到镜像中.其格式是: ADD 源 ...
- Docker学习笔记三 Dockerfile 指令 定制镜像
本文地址:https://www.cnblogs.com/veinyin/p/10412079.html 镜像是分层存储的,每一层都是独立存在的,修改当前层并不会修改其依赖的上一层,删除某一层也只是 ...
随机推荐
- 8 -- 深入使用Spring -- 2...6 Spring 4.0 增强的自动装配和精确装配
8.2.6 Spring 4.0 增强的自动装配和精确装配 Spring提供了@Autowired 注解来指定自动装配,@Autowired可以修饰setter方法.普通方法.实例变量和构造器等.当使 ...
- DOS 配置IP地址
@echo off :startIP set /p source=STATIC Y or N or E: echo source:%source% if "%source%" == ...
- jQuery Colorbox弹窗插件使用教程小结、属性设置详解以及colorbox关闭
jQuery Colorbox是一款弹出层,内容播放插件,效果极佳,当然我主要是用来弹出图片啦. jQuery Colorbox不仅有弹性动画效果,淡入淡出效果,幻灯片播放,宽度自定义,还能够ajax ...
- CentOS7上Redis安装与配置
一.redis安装(注意:最好先安装一遍gcc->yum -y install gcc:如果系统本身缺少,make时候会出错,后期修改稍麻烦) 1.wget命令下载 wget http://do ...
- flask路由中增加正则表达式
#coding=utf-8 from flask import Flask from werkzeug.routing import BaseConverter class RegexConverte ...
- ajax二级联动代码实例
//二级联动 $(function () { var _in_progress = false; function check_in_progress() { if (_in_progress == ...
- mvc 默认访问 Area 下控制器方法
在MVC项目中经常会使用到Area来分开不同的模块让项目结构更加的清晰.如果想网站打开默打开Area下的控制器时会出现以下的错误 “/”应用程序中的服务器错误. 未找到视图“Index”或其母版视图, ...
- 原生js--异步请求
1.异步请求的方法: iframe.script.XMLHttpRequest.comet(服务器端发起) 2.XMLHttpRequest request = new XMLHttpRequest( ...
- Python读写txt文本文件
一.文件的打开和创建 ? 1 2 3 4 5 >>> f = open('/tmp/test.txt') >>> f.read() 'hello python!\n ...
- Elasticsearch学习之深入搜索五 --- phrase matching搜索技术
1. 近似匹配 什么是近似匹配,两个句子 java is my favourite programming language, and I also think spark is a very goo ...