DockerFile怎么创建镜像?

在/chentest/文件夹里建立一个dockerfile,内容如下:

1

2

3

4

5

FROM ubuntu:14.04

MAINTAINER Chris Chan "chenx1242@163.com"

RUN apt-get update && apt-get install -y nginx

RUN echo "自由领导人民!" > /usr/share/nginx/html/index.html

EXPOSE 80

然后在/chentest里执行这个dockerfile,命令是# docker build -t="chenchen01/svs_batman" .,注意后面这个点,这个点是“当前文件夹”的意思,也就是说dockerfile是在当前文件夹里,由于我国的国情,可能会有这样的情况出现:

但是不要怕,重新再来过可能就会好了。如果还不行,就多试几次,然后会出现一连串的字符,也会生成一连串的镜像,如果正常的话,就会出现“Successfully built 镜像号”。

可见“自由领导人民”这句话已经被写入了我们计划中的index.html里。

如果我们不是yum安装开源工具,而是公司自己的模块,那么也可以使用dockerfile进行制作镜像,在这里我们用mrs和zkclient为例子。

首先在/chentest里建立一个文件夹,比如叫mrstest,里面有mrs和zkclint两个子文件夹。然后再把这个mrstest进行打包,名字叫mrstest.tar.gz。如图:

这个时候,来修改一下Dockerfile,内容如下:

1

2

3

4

5

6

7

8

FROM centos:7

MAINTAINER Chris Chan "chenx1242@163.com"

RUN mkdir /mnt/hswx      #建立一个hswx的文件夹

ADD mrstest.tar.gz /mnt/hswx    #ADD是把当前文件夹的文件复制到hswx文件夹里,同时拆包解压缩

RUN yum update && yum install -y vim*    #默认是不带vim的,这里安装一个

RUN echo "自由领导人民!" > /mnt/hswx/index.html  #同样这里家一句话

EXPOSE 9030

EXPOSE 2181

然后就依照这个东东,制作一个叫"stevencurry/gotowin"的镜像,命令是 # docker build -t="stevencurry/gotowin" .。然后会就会出现一步又一步的进程,最后出现“Successfully built 38d8ef9229fc”,我们这个编号为38d8ef9229fc的"stevencurry/gotowin"镜像成功了。

于是可以验证一下,如图:

可见vim 也好使了,但是要注意,vim这里还是不识别中文,打开的话是乱码,这里还需要进一步改进。

docker查询容器命令:docker ps -a

docker删除容器命令:docker rm 容器名/容器编号

docker查询镜像命令:docker images

eocker删除镜像命令:docker rmi 容器名

文章转载自:http://yun.jinre.com/newsinfo/794554.html

上一篇:使用Docker Stack 部署web集群的步骤介绍
下一篇:hadoop集群服务器安装配置教程