zoukankan      html  css  js  c++  java
  • Dockerfile-常用指令及使用

    Dockerfile常用指令及使用

    1. dockerfile介绍

    2. Dockerfile常用指令

    指令 描述
    FROM 构建新镜像是基于哪个镜像
    MAINTAINER 进行维护者姓名或邮箱地址
    RUN 构建镜像时运行的shell命令
    ENV 设置环境变量
    USER 为RUN、CMD和ENTRYPOINT执行命令指定运行用户
    EXPOSE 声明容器运行的服务端口
    HEALTHCHECK 容器中服务器健康检查
    WORKDIR 为RUN、CMD、ENTRYPOINT、COPY和ADD设置工作目录
    ENTRYPOINT 运行容器时执行,如果有多个CMD指令,最后一个生效
    CMD 运行容器时执行,如果有多个CMD指令,最后一个生效
    ADD 添加文件包或文件,带有解压的功能
    COPY 单纯复制文件,或文件夹
    LABEL 标签

    2.1 FROM指令

    • 基本语法

      FROM <image>
      FROM <image>:<tag>
      
    • 使用案例

      # base image
      FROM centos
      

    2.2 MAINTAINER指令

    • 基本语法

      MAINTAINER <name>
      
    • 使用案例

      # MAINTAINER
      MAINTAINER shichao@scajy.cn
      

    2.3 run指令

    • 基本语法

      run  <要执行的命令>
      run <command>  (shell模式)
      run [ "executable", "param1", "param2"  ]  (exec模式)
      
    • 使用案例

      run <command>  (shell模式)
      	/bin/sh -c command 
      	CMD /bin/sh -c 'nginx -g "daemon off;"'
      run [ "executable", "param1", "param2"  ]  (exec模式)
      run ["/bin/bash" , "-c", "nginx -g daemon off" ]
      

    2.4 expose指令

    • 基本语法

      expose <prot> [<port>...]
      
    • 使用案例

      EXPOSE 80
      

    2.5 cmd命令

    • 基本语法

      cmd [ "executable" , "param1" , "param2"  ] (exec模式)
      cmd command param1 param2 (shell模式)
      
    • 使用案例

      CMD /bin/sh -c 'nginx -g "daemon off;"'
      

    2.6 entrypoint指令

    • 基本语法

      cmd [ "executable" , "param1" , "param2"  ] (exec模式)
      cmd command param1 param2 (shell模式)
      
    • 使用案例

      ENTRYPOINT ["nginx"]
      

    2.7 ADD指令

    • 基本语法

      ADD <"src"> ...<dest>
      ADD["<src>"..."<dest>"] (适用于文件路径中有空格的情况)
      		
      COPY <src>...<dest>
      COPY [ "<src>"..."<dest>" ] (适用于文件路径中有空格的情况)
      
    • 使用案例

      ADD nginx-1.12.2.tar.gz /usr/local/src
      
      COPY index.html /usr/local/nginx/html/
      
      
      #执行结果
      [root@1-230 nginx]# curl 192.168.0.230:8082
      ni hao yello
      

    2.8 VOLUME指令

    • 基本语法

      volume ["/data"]
      

    2.9 workdir指令

    • 基本语法

      WORKDIR /path/to/workdir
      
    • 使用案例

      # change dir to /usr/local/src/nginx-1.12.2
      WORKDIR /usr/local/src/nginx-1.12.2
      

    2.10 user指令

    • 基本语法

      USER NGINX
      USER user                    USER uid
      USER user:group              USER uid:gid
      USER user:gid                user uid:group
      

    2.11 ONBUILD指令

    • 基本语法

      ONBUILD [INSTRUCTION]
      

    3. 构建镜像

    • docker build镜像

      	Usege:docker  build [OPTIONS]  PATH |  URL  | - [flags]
      	OPTIONS:
      	        -t:--tag list   #镜像名称
      	        -f:--flie  string     #指定dockerfile文件位置
      	
      	案例:
      	        docker    build  .
      	        docker    build    -t  test/v1   .
      	        docker    build   -t   test/v1   -f /path/Dockerfile 
      	        docker    build   -t  test/v1   http://xxxx.example.com/Dockerfile
      
      
  • 相关阅读:
    SQL中char,varchar,nvarchar等的异同
    SQL中group by的用法
    如何管理自己的时间
    ref和out
    SQL中的日期时间函数
    SQL中的类型转换
    SQL中的自定义函数Function
    SQL中的模糊查询
    Struct是干什么的
    把普通图片转换成二进制
  • 原文地址:https://www.cnblogs.com/scajy/p/13807313.html
Copyright © 2011-2022 走看看