dockerfile介绍

转载: http://blog.csdn.net/wsscy2004/article/details/25878223

             http://www.tuicool.com/articles/r6BZruu

FROM   

基于那个镜像文件

MAINTAINER   

镜像创建者信息

CMD 
容器启动时执行的命令 一个dockerfile只能有一条cmd指令,如果多条只执行最后一条CMD指令,
并且 docker run 时候 写上cmd 指令就会覆盖掉dockerfile的cmd指令
ENTRYPOINT 
容器启动时时候执行的命令,一个dockerfile只能有一条ENTYRPOINT指令,如果多条只会执行最后一条指令
并且不存在CMD的可替换性
该指令的使用分为两种情况,一种是独自使用,另一种和CMD指令配合使用。
当独自使用时,如果你还使用了CMD命令且CMD是一个完整的可执行的命令,那么CMD指令和ENTRYPOINT会互相覆盖只有最后一个CMD或者ENTRYPOINT有效
比如:
# CMD指令将不会被执行,只有ENTRYPOINT指令被执行
CMD echo “Hello, World!”
ENTRYPOINT ls -l
另一种用法和CMD指令配合使用来指定ENTRYPOINT的默认参数,这时CMD指令不是一个完整的可执行命令,仅仅是参数部分。ENTRYPOINT指令只能使用JSON方式指定执行命令,而不能指定参数。

USR 

使用哪个用户跑container

EXPOSE 

容器内部服务开启的端口,主机上想要访问需要做端口映射

ENV  

设置环境变量

例如 ENV JAVA_HOME /usr/local/java

ADD 

ADD <src>  <dest>  从src 复制文件到container的dest 目录 (COPY)

如果 src 是压缩文件会自动解压缩到container的dest 目录下面,如果src 是文件,dest 没有以/ 结尾,则认为dest 也是文件

会将src文件的内容写入到dest中,如果src是文件,dest以/结尾,将文件复制到dest目录下面

src 是相对于构建目录的相对路径,可以是文件和目录,dest 则是container绝对路径

VOLUME  

设置指令,使容器中的一个目录具有持久化存储数据的功能,改目录可以被容器本身使用,也可以共享给其他容器使用。

WORKDIR 

切换目录相当于CD, 对 RUN,ENTRYPOINT,CMD有效,例如  WORKDIR /P1 WORKDIR /P2  RUN vim a.txt

ONBULID 

ONBUILD 指定的命令在构建镜像时并不执行,而是在它的子镜像中执行




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值