<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>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                **\-f :** 指定要使用的Dockerfile路徑; **\-m :** 設置內存最大值; **\--tag, -t:** 鏡像的名字及標簽,通常 name:tag 或者 name 格式;可以在一次構建中為一個鏡像設置多個標簽。 ***** **1.** 使用當前目錄的 Dockerfile 創建鏡像,標簽為 runoob/ubuntu:v1。 ~~~ docker build -t runoob/ubuntu:v1 . ~~~ **2.** 使用URL**github.com/creack/docker-firefox**的 Dockerfile 創建鏡像。 ~~~ docker build github.com/creack/docker-firefox ~~~ **3.** 也可以通過 -f Dockerfile 文件的位置: ~~~ $ docker build -f /path/to/a/Dockerfile . ~~~ ***** [docker build ——“.”](https://www.cnblogs.com/panpanwelcome/p/12603701.html) 我們在使用?docker build?命令去構建鏡像時,往往會看到命令最后會有一個?**.**?號。 docker build -t xxx **.** 這里的 **.** 號代表什么意思呢? 在跟后端小悅悅同學交流的過程中,就發現小悅悅同學對 . 號的理解有所偏差,以為是用來指定 Dockerfile 文件所在的位置的,但其實 -f 參數才是用來指定 Dockerfile 的路徑的,那么 **.** 號究竟是用來做什么的呢? Docker 在運行時分為 Docker引擎(服務端守護進程) 以及 客戶端工具, 我們日常使用各種 docker 命令,其實就是在使用客戶端工具與 Docker 引擎 進行交互。 那么當我們使用 docker build 命令來構建鏡像時,這個構建過程其實是在 Docker引擎中完成的,而不是在本機環境。 那么如果在 Dockerfile 中使用了一些 COPY 等指令來操作文件,如何讓 Docker引擎 獲取到這些文件呢? 這里就有了一個 鏡像構建上下文 的概念,當構建的時候,由用戶指定構建鏡像的上下文路徑,而 docker build 會將這個路徑下所有的文件都打包上傳給 Docker 引擎,引擎內將這些內容展開后,就能獲取到所有指定上下文中的文件了。 比如說 dockerfile 中的 COPY ./package.json /project,其實拷貝的并不是本機目錄下的 package.json 文件,而是 docker引擎 中展開的構建上下文中的文件,所以如果拷貝的文件超出了構建上下文的范圍,Docker引擎 是找不到那些文件的。 所以 docker build 最后的 . 號,其實是在指定鏡像構建過程中的上下文環境的目錄。 理解了上面的這些概念,就更方便的去理解 .dockerignore 文件的作用了。 關于 .dockerignore 的使用參見另一篇博文: 文件的作用 .dockerignore 在項目中,我們見過很多各式各樣的 ignore 文件。 比如使用 .gitignore 來忽略掉你不想追蹤的文件:https://git-scm.com/docs/gitignore 使用 .npmignore 來忽略你在發布包時不想發布的文件:https://docs.npmjs.com/misc/developers#keeping-files-out-of-your-package 那么 .dockerignore 文件是起什么作用的呢,不管是在 docker build 過程中,還是 docker run 的過程中,有沒有這個文件好像并沒有什么很大的影響,存在感不強的一個文件。 首先需要理解一下 鏡像構建上下文(context) 的概念,參見另一篇博文:docker build 命令后 . 號的意思 理解了這個概念就明白,當我們在 docker build 的過程中,首先會將指定的上下文目錄打包傳遞給 docker引擎,而這個上下文目錄中可能并不是所有的文件我們都會在 Dockerfile 中使用到,那么這個時候就可以在 .dockerignore 文件中指定在傳遞給 docker引擎 時需要忽略掉的文件或文件夾。 舉栗說明~ 比如我們在前端項目中,node\_modules 文件夾在構建鏡像過程中如果用不到,但是又異常龐大,那么向 docker引擎 傳遞其實是并沒有必要的(其實大家電腦性能都這么好,也不在乎這幾秒鐘了。。。只是舉個例子,可以提升鏡像構建速度),這個時候就可以將 node\_modules 文件夾加入 .dockerignore 文件中。
                  <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>

                              哎呀哎呀视频在线观看