码迷,mamicode.com
首页 > 其他好文 > 详细

Dockerfile文件那些事(一)

时间:2016-05-12 14:01:25      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:

Dockerfile文件那些事()

Dockerfile是用来构建镜像的,该文件中有这么几个指令:

FROM

MAINTAINER

RUN

EXPOSE

 

上面这四个指令以后咱们慢慢说他们的作用

 

还有几个常用的指令:

CMD

ENTERYPOINT

ADD

COPY

VOLUME

WORKDIR

ENV

USER

 

这些命令就算我都说了也记不住,咱们边学边记忆.

 

先说下Dockerfile构建过程

1.从基础镜像运行一个容器

2.执行一条指令,对容器作出修改

3.执行类似docker commit的操作,提交一个新的镜像层

4.再基于刚提交的镜像运行一个新容器

5.执行Dockerfile中的下一跳指令,直至所有指令执行完毕.

 

 

有的时候楼主是挺醉的,为啥呢,每次想有点作为的时候,比如拯救世界啊,帮国家领导人寻找核弹头啊,帮邻居的小孩找皮球啊,都会有各种阻力在阻碍楼主前进.

 

root@syx-VB:/# mkdir -p dockerfile/df_test2/
root@syx-VB:~# cd dockerfile/df_test2/
root@syx-VB:~/dockerfile/df_test2# vim Dockerfile


文件的内容如下:

FROM ubuntu
MAINTAINER syx '783284481@qq.com'
RUN apt-get update && apt-get install -y nginx
EXPOSE 80


先别管这些指令啥意思,你先猜猜

楼主为了简单起见,用了最简单的指令来组成一个Dockerfile.注意这个文件的名字必须叫Dockerfile.

root@syx-VB:~/dockerfile/df_test2# docker build -t="syx/df_test2" .


之后,经过漫长的等待,你想想吧,楼主一共就这么几行命令就执行了快一个小时,而且中间还在不停的出错,醉了,日了狗了.可想而知如果指令挺多会怎样了,楼主正在想办法解决在构建Dockerfile的时候挺慢的问题,如果你有好的办法请不吝赐教.谢谢!!

root@syx-VB:~/dockerfile/df_test2# docker build -t="syx/df_test2" .
root@syx-VB:~/dockerfile/df_test2# docker images


能看到我们自己构建的镜像了.

 

是不是很神奇,在这里你需要确保你的机器能够上网,楼主搞不懂为啥在构建Dockerfile的时候是如此的缓慢,楼主在使用Dockerfile构建镜像的时候是从http://archive.ubuntu.com/ubuntu这个网站上pull的内容,这个网站是国外的,需要翻墙或者通过一定的手段才能快速的pull东西.楼主暂时也不会翻墙,也没啥好的手段,如果你有,请指点一二!!!感激不尽!!!定当给你跪舔一波!

Dockerfile文件那些事(一)

标签:

原文地址:http://blog.csdn.net/shanyongxu/article/details/51366265

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!