Dockerfile

基础镜像信息:

  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

时间: 2024-10-20 19:52:12

Dockerfile的相关文章

Docker学习笔记——Mongo Dockerfile及容器运行

1.创建项目目录mongo,在目录下上传下载的Mongodb安装文件及mongo.conf配置文件,创建Dockerfile文件,项目结构如下: mongo - Dockerfile - mongo.conf - mongodb-linux-x86_64-3.4.9.tgz - data - logs Dockerfile内容如下: # mongo # SOURCE_IMAGE FROM centos # MAINTAINER_INFO MAINTAINER bluemooder [email 

dockerfile语法

dockerfiles的指令不区分大小写,但约定为全部大写 dockerfiles支持如下语法命令: 1.FROM <image name> 所有的dockerfile都必须以from命令开始,from命令会指定镜像基于哪个基础镜像而创建 如: FROM ubuntu 2.MAINTAINER <author name> 设置该镜像的作者 3.RUN <command> 在shell或者exec的环境下执行的命令,run指令会在新创建的镜像添加新的层面,接下来提交的结果

docker~通过vs2017的Dockerfile来生成镜像

Dockerfile这个东西我们之前是介绍过,它方便,快捷,易用,而在vs2017中也对docker进行了支持,而生成docker image的方式就是有用Dockerfile为基础的,在添加docker支持之后,vs会为我们在根目录下生成一个Dockerfile的文件,我们可以通过docker客户端来编译这个Dockerfile,并把它build一个镜像文件,方便至极! 你可以在docker平台上下载windows版本的安装包,当前需要安装一个toolbox的插件 启动之后,系统会为docke

Dockerfile注意事项

准则 尽量将Dockerfile放在空目录中,如果目录中必须有其他文件,则使用.dockerignore文件. 避免安装不必须的包. 每个容器应该只关注一个功能点. 最小化镜像的层数. 多行参数时应该分类.这样更清晰直白,便于阅读和review,另外,在每个换行符\前都增加一个空格. 对构建缓存要有清楚的认识. 指令注意事项 FROM Dockerfile reference for the FROM instruction 任何时候,尽量使用官方镜像源作为你镜像的基础镜像.我们建议使用Debi

Dockerfile搭建apache、ssh服务

Dockerfile文件 实验需求: 1.  创建容器守护态运行 2.  使用dockerfile文件创建镜像 3.  使用镜像搭建httpd.sshd服务 实验步骤: 守护态运行 更多的时候,需要让 Docker 容器在后台以守护态(Daemonized)形式运行.此时,可以通过添加  -d  参数来实现.例如下面的命令会在后台运行容器. 或 容器启动后会返回一个唯一的 id,也可以通过dockerps命令来查看容器信息. 1.docker run -d 运行提个新的容器,我们通过-d命令让他

Docker学习笔记(7-3)Dockerfile的指令(二)

学习目标: Dockfile指令 CMD ENTRYPOINT ADD/COPY/VOLUME WORKDIR/ENV/USER ONBUILD Dockerfile FROM ubuntu:14.04 MAINTAINER liangshengqi "[email protected]" ENV REFRESH_DATE 2017-02-05 RUN apt-get update RUN apt-get install -y nginx COPY index.html  /usr/s

Docker 基础 : Dockerfile

Dockerfile 是一个文本格式的配置文件,用户可以使用 Dockerfile 快速创建自定义的镜像.我们会先介绍 Dockerfile 的基本结构及其支持的众多指令,并具体讲解通过执行指令来编写定制镜像的 Dockerfile. 基本结构 Dockerfile 由一行行命令语句组成,并且支持已 # 开头的注释行.一般而言,Dockerfile 的内容分为四个部分:基础镜像信息.维护者信息.镜像操作指令和容器启动时执行指令.例如: # This dockerfile uses the Ubu

docker-4 Dockerfile的使用

Dockerfile FROM      基础镜像 MAINTAINER  维护这信息 RUN       运行什么命令,在命令前面加上RUN ADD       往里面加点文件,copy文件,会自动解压 WORKDIR    当前的工作目录 VOLUME     目录挂载 EXPOSE     开放的端口 RUN       进程要一直运行 实战:构建nginx wget http://nginx.org/download/nginx-1.9.3.tar.gz wget ftp://ftp.c

dockerfile 的使用

通过docker build命令可以建立镜像. 通常需要文本文件Dockerfile,例子如下: from hub.c.163.com/library/nginx     ----基于的镜像 run echo  "hello world" >/etc/nginx/index.xml  ----追加到index.html 末尾 expose 80   ---暴露80端口 cmd 'nginx'     ----启动nginx服务 保存后,运行 docker build -t myn

【VMCloud云平台】拥抱Docker(六)关于DockerFile(3)示例

在前面两篇中,我们讲了大部分参数,今天将介绍另外两个较为重要的参数,然后再将前面两章的知识串起来,做一个DockerFile,实现VIM/SSH镜像. 以下就是今天所要说DockerFile涉及的环境: . DockerFile简易示意图: 1. VOLUME参数:看过我们介绍VOLUME篇的同学应该都知道VOLUME这个参数是用来干啥的,这里就不做多介绍了,如果在dockerfile里不指定的话,可以通过-v进行指定,当然两者是有区别的,具体可以参考Docker篇第五章. 2. WORKDIR