<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                --- **FROM 指定基礎鏡像** ``` FROM <鏡像>:[tag] FROM <鏡像>@digest[校驗碼] ``` **MAINTAINER 提供Dockerfile 制作者提供本人信息** ``` MAINTANIER "maXcon <409985270@qq.com>" ``` **COPY 把宿主機中的文件復制到鏡像中去** - src 原文件 - 支持通配符 - 通常相對路徑 - dest 目標路徑 - 通常絕對路徑 有空白字符隔開的字串需要用"",否則會被當做兩個文件 > 文件復制準則: > 1 src必須是build上下文中的路徑,不能是其父目錄 > 2 如果src是目錄,則其內部文件或子目錄會被遞歸復制但src目錄自身不會被復制 > 3 如果指定了多個src,或在src中使用了通配符,則dest必須是一個目錄,且必須以/結尾 > 4 如果dest實現不存在,它將會被自動創建,這包括其父目錄 **ADD 類似COPY命令** 支持URL路徑----如果可以訪問網絡的話,會訪問網絡下載到本地然后打包進鏡像 > 操作準則: 1 如果src為URL且dest不以/結尾,則src指定的文件將被下載并 直接被創建為dest;如果dest以/結尾,則文件名URL指定的文件 將被直接下載并保存為dest/filename 2 如果是壓縮包會被解壓,但通過URL路徑獲取到的tar文件不會被展開 3 如果src有多個,或其間接或直接使用了通配符,則dest必須是一個 以/結尾的目錄路徑,如果dest不以/結尾,則其被視為一個普通文件 src的內容將被直接寫入到dest中 **WORKDIR 指定工作目錄** > 每次只會影響這個指令后續的指令 ``` ADD nginx-1.14.2.tar.gz /usr/local/src/ #不受影響 WORKDIR /usr/local/src/ ADD nginx-1.14.2.tar.gz ./ #受影響 ``` **VOLUME 卷** 只能定義docker管理的卷: ``` VOLUME /data/mysql ``` 運行的時候會隨機在宿主機的目錄下生成一個卷目錄 **EXPOSE 為容器打開指定要監聽的端口以實現與外部通信** 使用格式: ``` EXPOSE 80/tcp 23/udp ``` 不加協議默認為tcp 使用-P選項可以暴露這里指定的端口, 但是宿主的關聯至這個端口的端口是隨機的 **ENV** 用于為鏡像定義所需的環境變量,并可被Dockerfile文件中位于 其后的其它命令所調用 調用格式: `$A` 或 `${A}` ``` ENV <key> <value> ENV <key>=<value> ``` 第一種格式中,`key`之后的所有內容均會被其視作`<value>`的組成部分 因此,一次只能設置一個變量 第二種格式可用一次設置多個變量,每個變量為一個`<key>=<value>` 的鍵值對,如果`<value>`中包含空格,可以反斜線(\)進行轉義 也可以通過對`<value>`加引號進行標識。另外,反斜線也可用于續航 定義多個變量時。建議使用第二種方式,以便在同一層中完成所有功能 具體用法: ``` ENV JAVA_HOME /usr/local/jdk ENV JRE_HOME $JAVA_HOME/jre ENV CLASSPATH $JAVA_HOME/lib/:$JRE_HOME/lib/ ENV PATH $PATH:$JAVA_HOME/bin/ ENV A /web/html COPY index.html ${A:-/web/html} ``` 在docker run 中傳遞變量: `docker run -e [list] `傳變量值 如果在dockerfile中賦值變量后也能在docker run中繼續賦值 `docker run --name b1 --rm -e A=xx [鏡像ID]` 不會影響docker build 的過程 `printenv`輸出環境變量信息 **RUN命令** 使用格式: `RUN <command>` ``` RUN ["<executable>","<param1>","<param2>"] ``` 第一種格式中`<command>`命令通常是一個shell命令,且以`/bin/sh -c`來運行它 這意味此進程在容器中的PID不能為1,不能接收Unix信號,因此,當使用docker stop命令 來停止容器時,此進程接收不到信號 第二種語法格式中的參數是一個JSON格式的數組,其中`<executable>`為要運行的命令,后面的 `<paramN>`為傳遞給命令的選項或參數,然而,此種格式指定的命令不會以`/bin/sh -c`來運行它 因此常見的shell操作如變量替換以及通配符替換將不會進行 不過如果要運行的命令依賴于 此shell特性的話,可以將其替換為下面的格式: ``` RUN ["/bin/bash","-c","<executable>","<param1>"] ``` **CMD 運行于docker run中** 語法有三種寫法, 只能是雙引號 1. `CMD ["executable","param1","param2"]`啟動為ID為1的進程,具體實例: ``` CMD ["/bin/sh","-c","/bin/httpd","-f","-h /web/html"] ``` 2. `CMD ["param1","param2"]` ``` CMD ["param1","param2"] # 此種用法用于為ENTRYPOINT指令提供默認參數 CMD ["nginx"] ``` 3. `CMD command param1 param2` 直接運行為shell的子進程,param*=執行參數 ``` docker run -it -p 8888:80 172.20.23.31/server1/nginx-base:v1 nginx ``` 可用于執行腳本\添加腳本: ``` ADD run_tomcat.sh /apps/tomcat/bin/run_tomcat.sh RUN chmod +x /apps/tomcat/bin/run_tomcat.sh RUN chown -R tomcat:tomcat /apps /data/tomcat CMD ["/apps/tomcat/bin/run_tomcat.sh"] #引用腳本 ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看