Dockerfile自定义镜像

Posted 永旗狍子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dockerfile自定义镜像相关的知识,希望对你有一定的参考价值。

一.Dockerfile自定义镜像

1.Dockerfile文件

创建自定义镜像就需要创建一个Dockerfile,如下为Dockerfile的语言

FROM:指定基础镜像,必备的指令,并且必须是第一条指令。

MAINTAINER:指明该镜像的维护者和点子邮件。
    比如:MAINTAINER xxxx "xxxxx@qq.com"

ENV:设置环境变量。
    比如:EVN key1=value1 key2=value2...

RUN:在新镜像内部执行的命令,比如安装一些软件、配置一些基础环境,可使用\\来换行。
    比如:RUN yum install -y mysql-server

COPY:将主机的文件复制到镜像文件中,如果目标位置不存在会自动创建。
    比如:COPY application.yml /etc/resources

ADD:和COPY一样,但是ADD会加上解压操作

EXPOSE:暴露镜像的端口供主机做映射,可以暴露多个端口。
    比如:EXPOSE 8080

WORKDIR:在构建镜像时,指定镜像的工作目录,之后的命令都是基于此工作目录,如果不存在,则会创建目录,而且在进入容器时,会默认定位到该路径下。
    比如:WORKDIR /usr/local

VOLUME:用来向基础镜像中添加数据卷
    比如 VOLUME /root/mydata /root/condata

CMD:容器启动时需要执行的命令。
    比如 CMD /bin/bash

实例:通过Dockerfile制作ssm-tomcat镜像

在本地创建一个ssm_tomcat的文件夹,把Dockerfile和ssm.war放到文件夹中,并拖拽到linux的root目录下

               

需要通过命令将其制作为镜像,并且要在Dockerfile的当前目录下执行命令,之后即可在镜像中查看到指定的镜像信息,注意最后的 .

docker build -t 镜像名称[:tag] .

 

 

以上是关于Dockerfile自定义镜像的主要内容,如果未能解决你的问题,请参考以下文章

Docker:Dockerfile自定义镜像

Dockerfile详解,以及构建自定义镜像

如何使用 Dockerfile自定义镜像?

DockerFile 自定义镜像mycentos

Dockerfile语法自定义镜像构建详解

docker学习笔记——Dockerfile创建自定义镜像