FROM
FROM scratch //制作base image
FROM centos //使用base image
LABEL 包含作者 版本 描述之类的信息
LABEL maintainer="xxx@gmail.com"
LABEL version="1.0"
LABEL description="..."
Metadata不可少
RUN
为了美观,复杂的run请用反斜线换行,避免无用分层,合并多条命令成一行 如:
RUN yum update && yum install -y vim \
python-dev
WORKDIR
设定当前工作目录,相当于cd xxx
WORKDIR /root
WORKDIR /test //如果没有会自动创建
WORKDIR demo
RUN pwd 输入结果是/test/demo
用WORKDIR ,不要用RUN cd
尽量使用绝对目录
ADD and COPY
ADD hello / 添加hello到根目录
ADD test.tar.gz 添加到根目录并解压
WORKDIR /root
ADD hello test 结果是/root/test/hello
大部分情况,COPY有余ADD ,ADD除了COPY还有额外解压功能
添加远程文件/目录请使用curl或者wget
ENV
ENV MYSQL_VERSION 5.6 设置常量
RUN apt-get install -y mysql-server="${MYSQL_VERSION}" #引用常量
尽量使用evn增加可维护性