dockerfile语法(一)

dockerfile语法(一)

FROM

  • FROM scratch 制作base image
  • FROM centos 使用base image
  • FROM ubuntu:14.04 使用base image 指定版本

LABEL

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'

为了美观,复杂的RUN请用反斜线换行!避免无用分层,合并多条命令成一行!

WORKDIR

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

用WORKDIR,不要用 RUN cd! 尽量使用绝对目录!

ADD and COPY

  • ADD hello / 将hello添加到Image的根目录中
  • ADD test.tar.gz / 添加到根目录并解压
  • WORKDIR /root
    ADD hello test/
    或者
    WORDIR /root
    COPY hello test/ 将hello添加到 /root/test/hello

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

ENV

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

EXPOSE

EXPOSE 5000 暴露5000端口

转载于:https://my.oschina.net/u/3628952/blog/1805860

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值