基础镜像信息:
FROM ubuntu
维护者信息:
MAINTAINER docker_user [email protected]
镜像操作指令:
RUN echo "deb http://archive.ubuntu.com/ubuntu/ raring main universe" >> /etc/apt/sources.list
RUN apt-get update && apt-get install -y nginx
RUN echo "\ndaemon off;" >> /etc/nginx/nginx.conf
RUN指令将对镜像执行跟随的命令。每运行一条RUN指令,镜像添加新的一层,并提交。
容器启动时执行指令:
CMD /usr/sbin/nginx
CMD指令指定运行容器时的操作命令。
指令:
FROM <image>或FROM <image>:<tag>
指定基础镜像。
MAINTAINER <name>
指定镜像维护者。
RUN <command>或RUN [‘exectuable‘,‘param1‘,‘param2‘]
运行命令。
CMD
指定启动容器时执行的命令。每个Dockerfile只能有一条CMD命令。如果指定了多条命令,只有最后一条会被执行。如果用户启动容器时指定了运行的命令,则会覆盖掉CMD指定的命令。
EXPOSE <port> [<port>...]
指定容器暴露的端口号。
ENV <key> <value>
指定一个环境变量,会被后续RUN指令使用,并在容器运行时保持。
ADD <src> <dest>
复制指定的<src>到容器中的<dest>。
COPY <src> <dest>
复制本地主机的<src>为容器中的<dest>。
ENTRYPOINT
配置容器启动后执行的命令,并且不可被docker run提供的参数覆盖。每个Dockerfile中只能有一个ENTRYPOINT,当指定多个ENTRYPOINT时,只有最后一个生效。
VOLUME [‘/data‘]
创建一个可以从本地主机或其他容器挂载的挂载点。
USER daemon
指定运行容器时的用户名或UID,后续的RUN也会使用指定用户。
WORKDIR
为后续的RUN、CMD、ENTRYPOINT指令配置工作目录。
ONBUILD
配置当说创建的镜像作为其他新创建镜像的基础镜像时,所执行的操作指令。
创建镜像:
docker build