专栏首页快乐八哥使用Dockerfile构建镜像-Docker for Web Developers(5)

使用Dockerfile构建镜像-Docker for Web Developers(5)

1.理解Dockerfile语法

语法命令

命令功能

举例

FROM

所有的dockerfile都必须以FROM命令指定镜像基于哪个基础镜像来制作

FROM ubuntu:14:04

MAINTAINER

该容器维护作者,一般是作者的电子邮件

MAINTAINER liminjun2007@gmail.com

RUN

在shell或者exec的环境下执行的命令,run指令会在新创建的镜像添加新的层面,接下来提交的结果用在dockerfile的下一条指令中。

RUN echo "Hello World" > /root/hello_world.txt

CMD

提供容器默认的执行命令,dockerfile只允许使用一次CMD命令,如果执行多次,最后一次自动替换之前的。

CMD ["cat", "/root/hello_world.txt"]

更多详细语法可以参考:Dockerfile语法

2.编写一个简单的Dockerfile

#FROM - Image to start building on.
FROM ubuntu:14.04

#MAINTAINER - Identifies the maintainer of the dockerfile.
MAINTAINER liminjun2007@gmail.com

#RUN - Runs a command in the container
RUN echo "Hello World" > /root/hello_world.txt

#CMD - Identifies the command that should be used by default when running the image as a container.
CMD ["cat", "/root/hello_world.txt"]

Dockerfile文件放到simple-dockerfile文件夹下面,切换到simple-dockerfile文件夹下,执行命令:

docker build -t simple .

运行结果如下图所示:

运行simple容器,执行命令之后运行结果如下:

root@ubuntu-512mb-sfo2-01-gfw:~/simple-dockerfile# docker run simple
Hello world

3.参考链接

Dockerfile语法

Dockerfile 最佳实践

Dockerfile 构建镜像 - 每天5分钟玩转容器技术(13)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • JavaScript循环读书笔记

    循环知识:自我重复的风险 第一部分: 重复运行的代码就可以使用循环来解决。JavaScript的重复机制为循环(loop) for:适合重复动作已知次数的循环。...

    八哥
  • JavScript中的循环

    循环知识 第一部分: 重复运行的代码就可以使用循环来解决。JavaScript的重复机制为循环(loop) for:适合重复动作已知次数的循环。 while:w...

    八哥
  • Progressive Web Apps入门

    PC和Mobile开发技术演进 PC方向,从客户端到富客户端,到现在广泛使用的Web。 移动方向,目前主要还是原生应用和Mobile Web,PWA相关技术是未...

    八哥
  • JS 桥接模式

    桥接模式(Bridge)将抽象部分与它的实现部分分离,使它们都可以独立地变化。 其实就是函数的封装,比如要对某个DOM元素添加color和backgroundC...

    前端下午茶
  • 二叉搜索树

    一、操作: 判断元素是否存在:递归的在左右子树中查找 查找最小元素:在左子树中递归或者循环 查找最大元素:在右子树中递归或循环 插入:递归的插入,大于则插入在节...

    lwen
  • SqlServer查看死锁的存储过程

    跟着阿笨一起玩NET
  • [Leetcode][python]Sum Root to Leaf Numbers

    一棵树的每个节点都是0-9中的某一个数字,现在把从根节点到某一个叶子节点之间所有节点的数字依次连接起来组成一个新的数字。要求所有从根节点到叶子节点组成的数字的和...

    后端技术漫谈
  • Mysql中与时间相关的统计分析

    最近项目需要统计一段日期范围内,根据每分钟、几分钟、每天分别统计汇总某些事件/指标的发生总次数,平均发生次数,因此总结了Mysql中与时间处理、统计相关的资料。

    大江小浪
  • 速读原著-TCP/IP(TCP的未来和性能)

    T C P已经在从1200 b/s的拨号S L I P链路到以太数据链路上运行了许多年。在 8 0年代和9 0年代初期,以太网是运行 T C P / I P最主...

    cwl_java
  • 聊聊Java中CompletableFuture的使用

    CompletableFuture是java8引入的一个异步类,它最大的优势是可以在创建的对象中传入一个回调对象,在任务结束后(done或throw excep...

    jinjunzhu

扫码关注云+社区

领取腾讯云代金券