Dockerfile 语法

2020-05-19  本文已影响0人  许某杰

FROM:尽量使用官方的image作为base image

LABEL:imge的描述,类似于注释

LABEL maintainer="xiaoquwl@gmail.com"     image作者

LABEL version="1.0"                                        image版本

LABEL description="This is description"           image描述


RUN:执行命令

RUN yum update && yum install -y vim \ python-dev         #反斜杆换行

RUN apt-get update && apt-get install -y perl \ pwgen --no-install-recommends && rm -rf \ /var/lib/apt/lists/*        #注意清理cache

RUN /bin/bash -c 'source $HOME/.bashrc; echo $HOME'


WORKDIR :设置当前工作目录(使用 WORKDIR  ,不要用RUN cd,尽量使用绝对路径)

WORKDIR /root

WORKDIR /test            #如果没有会自动创建test目录

WORKDIR  demo

RUN pwd                      #输出结果应该是/test/demo


ADD and COPY(大部分情况,COPY优先ADD;ADD除了COPY还有额外解压功能;添加远程文件/目录使用curl或者wget)

ADD hello/

ADD test.tar.gz/        #添加到根目录并解压

WORKDIR /root

ADD hello test/        #    /root/test/hello

WORKDIR /root

ADD hello test/ 


ENV:设置环境变量(尽量使用ENV,增加可维护性)

ENV MYSQL_VERSION 5.6             #设置常量

RUN apt-get install -y mysql-server= "${MYSQL_VERSION}" \ && rm -rf /var/lib/apt/list/*        #引用常量


VOLUME and EXPOSE

后面学习补充

CMD and ENTRYPOINT

后面学习补充

上一篇 下一篇

猜你喜欢

热点阅读