云计算核心技术Docker教程:利用Dockerfile来创建镜像
在docker使用过程中,我们可以从已经创建的容器中更新镜像,并且commit提交这个镜像来创建新的镜像,使用docker commit 来扩展一个镜像比较简单,但是不方便在一个团队中分享此时我们可以使用 Dockerfile 指令来创建一个新的镜像。
常用参数:
FROM命令。用法,FROM:。FROM命令告诉docker我们构建的镜像是以哪个(发行版)镜像为基础的
RUN命令。用法RUN。RUN 后面接要执行的命令,比如,我们想在镜像中安装vim,只需在Dockfile中写入RUN yum install -y vim
ENV命令。用法,ENV。ENV命令主要用于设置容器运行时的环境变量
ADD命令。用法,ADD。ADD主要用于将宿主机中的文件添加到镜像中
先新建一个目录和一个 Dockerfile文件
$ mkdir -p /root/software
$ cd /root/software
创建Dockerfile文件
$ vim Dockerfile
#FROM 指令告诉 Docker 使用哪个镜像作为基础
FROM ubuntu:16.04
#MAINTAINER指定作者
MAINTAINER test@test.com
#RUN用于执行后面跟着的命令行命令
RUN apt-get install -y python3
RUN apt-get install -y python3-pip
RUN python3 -m pip install selenium
编写完成Dockerfile后使用docker build来生成镜像。
$ docker build -f Dockerfile -t ubuntu-py:v1 .
-f :指定要使用的Dockerfile路径;
-t: 镜像的名字及标签,通常 name:tag 或者 name 格式;
执行docker build命令后,Dockerfile中的指令会被一条一条的执行,每一步都创建了一个新的容器,在容器中执行指令并提交修改。当所有的指令都执行完毕之后,返回了最终的镜像 id。