dockerFile常用命令及注意事项

FROM scratch #制作基础base image
FROM centos #制作基础base image
备注:尽量使用官方的image作为base image
LABEL maintainer=“test”
LABEL version=“1.0”
LABEL description=“this is description”
备注:image的Metadata 不可少
RUN 执行命令并创建新的Image Layer
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 H O M E / . b a s h r c ; e c h o HOME/.bashrc;echo HOME/.bashrc;echoHOME’
备注:1.为了美观,复制的RUN用反斜杠换行 ; 2.避免无用分层,合并多条命令成一行
WORKDIR /test #如果没有会自动创建test目录
WORKDIR demo
RUN pwd #输出结果应该是 /test/demo
备注:1.用WORKDIR,不要用RUN cd; 2.尽量使用绝对目录
ADD test.tar.gz / #添加到根目录并解压
WORKDIR /root
ADD hello test/ #/root/test/hello
WORKDIR /root
COPY hello test/
备注:大部分情况,COPY优于ADD;
ADD除了COPY还有额外的解压功能,添加远程文件/目录使用curl或者wget

ENV MYSQL_VERSION 5.6 #设备常量
RUN apt-get install -y mysql-server= “${MYSQL_VERSION}”
&& rm -rf /var/lib/apt/lists/* #引用常量
备注:尽量使用ENV增加可维护性
CMD 设置容器启动后默认执行的命令和参数,如果docker run 指定了其他命令,CMD命令被忽略,如果定义了多个CMD,只有最后一个会执行
ENTRYPOINT 设备容器启动时运行的命令,让容器以应用程序或者服务的形式运行,不会被忽略,一定会执行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值