Dockerfile

Posted

tags:

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

####dockerfile常用保留字
FROM:指定一个镜像作为模板,第一条必须为FROM
MAINTAINER:镜像维护者的姓名和邮箱地址
RUN:容器构建是运行的命令 shell格式:RUN yum -y install vim
EXPOSE:当前容器对外暴露的端口
WORKDIR:工作目录,类似于cd,终端默认登陆进来的工作目录
USER:指定镜像以什么用户执行,默认root
ENV:用来在镜像构建过程中设置环境变量
ADD:将本地内容拷贝进镜像中,会自动处理URL和解压tar压缩包
COPY:类似于ADD,但不能解压文件,不能访问网络资源
VOLUME:容器数据卷,用于指定持久化目录
CMD:容器启动后要做的事,但只有最后一个生效,会被docker run后面的参数替代
ENTRYPOINT:配合CMD配置容器,使其可执行化

FROM centos:7
MAINTAINER zzyy<zzyybs@126.com>

ENV MYPATH /usr/local
WORKDIR $MYPATH

#安装vim编辑器
RUN yum -y install vim
#安装ifconfig命令查看网络IP
RUN yum -y install net-tools
#安装java8及lib库
RUN yum -y install glibc.i686
RUN mkdir /usr/local/java
#ADD 是相对路径jar,把jdk-8u171-linux-x64.tar.gz添加到容器中,安装包必须要和Dockerfile文件在同一位置
ADD jdk-8u171-linux-x64.tar.gz /usr/local/java/
#配置java环境变量
ENV JAVA_HOME /usr/local/java/jdk1.8.0_171
ENV JRE_HOME $JAVA_HOME/jre
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
ENV PATH $JAVA_HOME/bin:$PATH

EXPOSE 80

CMD echo $MYPATH
CMD echo "success--------------ok"
CMD /bin/bash

#用Dockerfile构建镜像
docker build -t 新镜像的名字:tag .
docker build -t centosjava8:1.5 .

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

dockerfile创建镜像

Docker Dockerfile详解

docker-6.使用Dockerfile定制镜像

Dockerfile

Dockerfile创建镜像

Docker 基础 : Dockerfile