美文网首页系统学习docker
2.6 dockerfile语法梳理

2.6 dockerfile语法梳理

作者: ouchaochao | 来源:发表于2019-08-07 22:44 被阅读0次

FROM:从哪里构建image

FROM scratch # 制作base image
FROM centos # 使用base image
FROM ubuntu:18.04

注意:为了安全,请使用官方的image

LABEL:标签

LABEL maintainer="abc@gmail.com"
LABEL version="1.1"
LABEL description="This is description"

注意:Metadata不可少!

RUN

为了美观,复杂的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/list/* # 注意清理cache
RUN /bin/bash -c 'source $HOME/.bashrc; echo
    $HOME'

WORKDIR:设定当前工作目录

WORKDIR /root
WORKDIR /test # 如果没有,会自动创建的
WORKDIR demo
RUN pwd # 输出结果应该是 /test/demo

注意:不要用RUN cd代替WORKDIR,尽量使用绝对目录

ADD和COPY

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

大部分情况copy优于add
add除了copy功能外,还附带解压缩
添加远程文件/目录请使用curl或者wget

ENV 定义常量

env可增加可维护性

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

Dockerfile Demo Time

相关文章

  • 2.6 dockerfile语法梳理

    FROM:从哪里构建image 注意:为了安全,请使用官方的image LABEL:标签 注意:Metadata不...

  • Dockerfile语法梳理

    在上一篇 使用Docker部署第一个Springboot应用 中我们使用了Dockerfile来创建镜像,接下来让...

  • 五、Dockerfile语法梳理

    一、FROM FROM 关键字一般用于开头,去指定我们要build的image是基于什么image的。 FROM ...

  • Dockerfile 的使用以及说明

    Dockerfile 语法

  • Docker 镜像制作

    Dockerfile语法 java镜像Dockerfile案例: FROM nimmis/ubuntu:14.0...

  • DockerFile语法梳理(会持续更新完善)

    为了方便日后查阅总结,做下语法记录。 FROM LABEL label很重要,就像要写注释。Metadata不可少...

  • Docker 笔记

    docker 命令 DockerFile 语法 例子

  • Docker 常用命令

    基本命令: Dockerfile 语法: 关于 Dockerfile 详细的情况,参见: https://www....

  • DockerFile语法

    DockerFile在我理解就是可以将所需要构建镜像的功能、组件都天前配置好,然后直接生成一个Image,而不是先...

  • Dockerfile 语法

    Dockerfile语法由两部分构成,注释和命令+参数 一个简单的例子 Dockerfile 命令 FROM 基础...

网友评论

    本文标题:2.6 dockerfile语法梳理

    本文链接:https://www.haomeiwen.com/subject/esaadctx.html