欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > 使用jib打包docker鏡像實(shí)戰(zhàn)

使用jib打包docker鏡像實(shí)戰(zhàn)

熱門標(biāo)簽:七大洲地圖標(biāo)注 河南省鄭州市地圖標(biāo)注 地圖標(biāo)注w是什么方向 400電話申請找哪家公司 福州呼叫中心外呼系統(tǒng)哪家好 新鄉(xiāng)人工智能電話機(jī)器人加盟 地圖標(biāo)注需要提交啥資料入駐 昆明外呼系統(tǒng) 臨汾電銷機(jī)器人費(fèi)用


本文主要研究一下如何使用google的jib打包docker鏡像

Jib 是谷歌最新開源的 Java 應(yīng)用的 Docker 鏡像生成工具,可以通過 Gradle 或 Maven 直接生成鏡像并上傳到倉庫而不需要 Dockerfile 文件或者其他插件;Jib 支持將資源文件和類分層打包,可以大幅度提升生成鏡像的速度

有一些其他的插件也可以通過 Docker 實(shí)現(xiàn)生成鏡像,如com.palantir.docker等,但是都需要額外配置 Dockerfile, 如果應(yīng)用僅需要通過 Dockerfile 構(gòu)建鏡像,建議使用 Jib 來提升構(gòu)建和上傳速度

maven

      <plugin>
        <groupId>com.google.cloud.tools</groupId>
        <artifactId>jib-maven-plugin</artifactId>
        <version>0.9.9</version>
      </plugin>

配置

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
    <maven.build.timestamp.format>yyyyMMdd</maven.build.timestamp.format>
  </properties>


  <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>com.google.cloud.tools</groupId>
        <artifactId>jib-maven-plugin</artifactId>
        <version>0.9.9</version>
        <configuration>
          <container>
            <jvmFlags>
              <jvmFlag>-Xms512m</jvmFlag>
            </jvmFlags>
            <ports>
              <port>8080</port>
            </ports>
            <useCurrentTimestamp>true</useCurrentTimestamp>
          </container>
          <from>
            <image>java:8u172-jre-alpine</image>
          </from>
          <to>
            <image>jib-demo:${maven.build.timestamp}</image>
          </to>
          <allowInsecureRegistries>true</allowInsecureRegistries>
          <extraDirectory>${project.basedir}/src/main/jib</extraDirectory>
        </configuration>
      </plugin>
    </plugins>
  </build>

這里指定base image為java:8u172-jre-alpine

同時指定生成的image名稱為jib-demo:${maven.build.timestamp}

container標(biāo)簽可以指定相關(guān)參數(shù),比如jvmFlags指定JVM參數(shù),ports指定expose的端口號

extraDirectory用于指定要添加的目錄,默認(rèn)為${project.basedir}/src/main/jib,即該目錄下的文件夾會在docker鏡像里頭同步創(chuàng)建,目錄層級關(guān)系以jib下目錄層級關(guān)系為準(zhǔn)。比如該目錄下有app/resources/demo.txt,則對應(yīng)該鏡像目錄為/app/resources/demo.txt

打包

mvn compile jib:dockerBuild -X

使用jib:dockerBuild是在本地打包鏡像,不push到遠(yuǎn)程,-X參數(shù)是顯示debug信息

如果使用jib:build命令,則打包之后push到遠(yuǎn)程

輸出日志實(shí)例:

[DEBUG] TIMING  Building image to Docker daemon
[DEBUG] RUNNING  Building image to Docker daemon
[INFO] Getting base image java:8u172-jre-alpine...
[DEBUG] TIMING  Pulling base image manifest
[DEBUG] RUNNING  Pulling base image manifest
[DEBUG] TIMING  Building application layers
[DEBUG] RUNNING  Building application layers
[INFO] Building dependencies layer...
[DEBUG] TIMING  Building dependencies layer
[DEBUG] RUNNING  Building dependencies layer
[INFO] Building resources layer...
[DEBUG] TIMING  Building resources layer
[DEBUG] RUNNING  Building resources layer
[INFO] Building classes layer...
[DEBUG] TIMING  Building classes layer
[DEBUG] RUNNING  Building classes layer
[INFO] Building extra files layer...
[DEBUG] TIMING  Building extra files layer
[DEBUG] RUNNING  Building extra files layer
[DEBUG] TIMED  Building application layers : 3.498 ms
[DEBUG] Building application layers : 3.498 ms
[DEBUG] Building extra files layer built sha256:0a9321c621ee2c138d9a93f4ba47f825e20dd7aca0e9206f30bf560122fdaa31
[DEBUG] Building resources layer built sha256:933116c8da4db70000355b750af2f3b5c4545e74db7b5eb0a5e37689ef86d44f
[DEBUG] Building classes layer built sha256:a99dbde7d015ba3d15b9265ac38f6536d65b00dd2a864b7003a34742f483939b
[DEBUG] TIMED  Building extra files layer : 33.718 ms
[DEBUG] TIMED  Building classes layer : 33.901 ms
[DEBUG] Building extra files layer : 33.718 ms
[DEBUG] TIMED  Building resources layer : 34.062 ms
[DEBUG] Building resources layer : 34.062 ms
[DEBUG] Building classes layer : 33.901 ms
[DEBUG] Building dependencies layer built sha256:a19961ec08095eb70ca3a070945223dcf51500a255a745272276139bf0a29f4e
[DEBUG] TIMED  Building dependencies layer : 1047.83 ms
[DEBUG] Building dependencies layer : 1047.83 ms
[INFO] The base image requires auth. Trying again for java:8u172-jre-alpine...
//......
[DEBUG] TIMED  Pulling base image manifest : 8959.891 ms
[DEBUG] Pulling base image manifest : 8959.891 ms
[DEBUG] TIMING  Setting up base image caching
[DEBUG] RUNNING  Setting up base image caching
[DEBUG] TIMED  Setting up base image caching : 0.824 ms
[DEBUG] Setting up base image caching : 0.824 ms
[DEBUG] TIMING  Pulling base image layer sha256:500c0ac4cdc58aee9a008e70466eeec8a4b74b25c29d003764635d2fe1b42827
[DEBUG] RUNNING  Pulling base image layer sha256:500c0ac4cdc58aee9a008e70466eeec8a4b74b25c29d003764635d2fe1b42827
[DEBUG] TIMING  Pulling base image layer sha256:aa38cd8c77d7320c7489327775e074580db5f23467198aab3e79c7db5cdfbdca
[DEBUG] TIMING  Pulling base image layer sha256:cb56d62302ec31640b40ca15843e7af6be145966a1064c78ea7afd6f10ce49e6
[DEBUG] RUNNING  Pulling base image layer sha256:cb56d62302ec31640b40ca15843e7af6be145966a1064c78ea7afd6f10ce49e6
[DEBUG] TIMING  Pulling base image layer sha256:ff3a5c916c92643ff77519ffa742d3ec61b7f591b6b7504599d95a4a41134e28
[DEBUG] RUNNING  Pulling base image layer sha256:ff3a5c916c92643ff77519ffa742d3ec61b7f591b6b7504599d95a4a41134e28
[DEBUG] RUNNING  Pulling base image layer sha256:aa38cd8c77d7320c7489327775e074580db5f23467198aab3e79c7db5cdfbdca
[DEBUG] TIMED  Pulling base image layer sha256:500c0ac4cdc58aee9a008e70466eeec8a4b74b25c29d003764635d2fe1b42827 : 612.524 ms
[DEBUG] Pulling base image layer sha256:500c0ac4cdc58aee9a008e70466eeec8a4b74b25c29d003764635d2fe1b42827 : 612.524 ms
[DEBUG] TIMED  Pulling base image layer sha256:ff3a5c916c92643ff77519ffa742d3ec61b7f591b6b7504599d95a4a41134e28 : 9985.702 ms
[DEBUG] Pulling base image layer sha256:ff3a5c916c92643ff77519ffa742d3ec61b7f591b6b7504599d95a4a41134e28 : 9985.702 ms
[DEBUG] TIMED  Pulling base image layer sha256:aa38cd8c77d7320c7489327775e074580db5f23467198aab3e79c7db5cdfbdca : 27267.144 ms
[DEBUG] Pulling base image layer sha256:aa38cd8c77d7320c7489327775e074580db5f23467198aab3e79c7db5cdfbdca : 27267.144 ms
[DEBUG] TIMED  Pulling base image layer sha256:cb56d62302ec31640b40ca15843e7af6be145966a1064c78ea7afd6f10ce49e6 : 54734.971 ms
[DEBUG] Pulling base image layer sha256:cb56d62302ec31640b40ca15843e7af6be145966a1064c78ea7afd6f10ce49e6 : 54734.971 ms
[DEBUG] TIMING  Building container configuration
[DEBUG] RUNNING  Building container configuration
[INFO] Finalizing...
[DEBUG] TIMED  Building container configuration : 0.462 ms
[DEBUG] Building container configuration : 0.462 ms
[INFO] Loading to Docker daemon...
[DEBUG] TIMED  Building image to Docker daemon : 65862.956 ms
[DEBUG] Building image to Docker daemon : 65862.956 ms
[INFO]
[INFO] Container entrypoint set to [java, -Xms512m, -cp, /app/resources/:/app/classes/:/app/libs/*, com.example.JibDemoApplication]
[INFO]
[INFO] Built image to Docker daemon as jib-demo:20180826
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:07 min
[INFO] Finished at: 2018-08-26T21:38:11+08:00
[INFO] Final Memory: 26M/493M
[INFO] ------------------------------------------------------------------------

查看鏡像

docker inspect jib-demo:20180826
[
  {
    "Id": "sha256:7554492dde84091bc6d015b29ec4bf854bb841b9ec4d8f7bef8b51a8ec59ef94",
    "RepoTags": [
      "jib-demo:20180826"
    ],
    "RepoDigests": [],
    "Parent": "",
    "Comment": "",
    "Created": "2018-08-26T13:37:05.65Z",
    "Container": "",
    "ContainerConfig": {
      "Hostname": "",
      "Domainname": "",
      "User": "",
      "AttachStdin": false,
      "AttachStdout": false,
      "AttachStderr": false,
      "Tty": false,
      "OpenStdin": false,
      "StdinOnce": false,
      "Env": null,
      "Cmd": null,
      "Image": "",
      "Volumes": null,
      "WorkingDir": "",
      "Entrypoint": null,
      "OnBuild": null,
      "Labels": null
    },
    "DockerVersion": "",
    "Author": "",
    "Config": {
      "Hostname": "",
      "Domainname": "",
      "User": "",
      "AttachStdin": false,
      "AttachStdout": false,
      "AttachStderr": false,
      "ExposedPorts": {
        "8080/tcp": {}
      },
      "Tty": false,
      "OpenStdin": false,
      "StdinOnce": false,
      "Env": [
        "PATH=/opt/jdk1.8.0_172/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
        "JAVA_HOME=/opt/jdk1.8.0_172"
      ],
      "Cmd": [],
      "Image": "",
      "Volumes": null,
      "WorkingDir": "",
      "Entrypoint": [
        "java",
        "-Xms512m",
        "-cp",
        "/app/resources/:/app/classes/:/app/libs/*",
        "com.example.JibDemoApplication"
      ],
      "OnBuild": null,
      "Labels": {}
    },
    "Architecture": "amd64",
    "Os": "linux",
    "Size": 186079594,
    "VirtualSize": 186079594,
    "GraphDriver": {
      "Data": null,
      "Name": "aufs"
    },
    "RootFS": {
      "Type": "layers",
      "Layers": [
        "sha256:cd7100a72410606589a54b932cabd804a17f9ae5b42a1882bd56d263e02b6215",
        "sha256:317e0b42ef29551507adc792c2dbc389af85c5d68900cf0f08abe907cbd4e199",
        "sha256:d6fd5302a9ee64c43b46153e9678153819d6d0e247381acbbe6cbe6ed9de0366",
        "sha256:417c6bd0930eb69d17ae5d601898a6a012900ca33c69e612840a3042b2451cbb",
        "sha256:8309a5eed5158c5639acb664312ddc7027a2ecb172744f548d6d9fb5f918a744",
        "sha256:6ef8c795d7a5e2a07f51d572a90b820e089f89adf30798193f4f3f410a261415",
        "sha256:9990447f3d37e3f2dc70718d0ea6602cf7843091d8bbe395f552c9c5dd10551c",
        "sha256:ff7910aaeee962d1d86e00742030378a2758da59d8c8cda3fe44314bbddd8081"
      ]
    },
    "Metadata": {
      "LastTagTime": "0001-01-01T00:00:00Z"
    }
  }
]

可以看到j(luò)ava -cp指定了/app/libs/、/app/resources/、/app/classes/這三個文件夾

小結(jié)

jib默認(rèn)執(zhí)行如下操作

COPY libs /app/libs/
COPY resources /app/resources/
COPY classes /app/classes/

也就是將libs拷貝到/app/libs,將resources拷貝到/app/resources,將classes拷貝到/app/classes.

doc

  • jib
  • Building Docker Image for a Spring Boot App With Jib
  • build-containers-faster-with-jib-a-google-image-build-tool-for-java-applications

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

標(biāo)簽:四川 臨沂 岳陽 鎮(zhèn)江 烏海 ???/a> 紅河 股票

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《使用jib打包docker鏡像實(shí)戰(zhàn)》,本文關(guān)鍵詞  使用,jib,打包,docker,鏡像,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《使用jib打包docker鏡像實(shí)戰(zhàn)》相關(guān)的同類信息!
  • 本頁收集關(guān)于使用jib打包docker鏡像實(shí)戰(zhàn)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    看电视剧不卡顿的网站| 99久久久无码国产精品衣服| 欧美爱爱免费视频| 久久久国产一区二区三区四区小说| 日韩在线a电影| 亚洲成a人片在线www| 欧美色老头old∨ideo| 亚洲美女视频一区| 91香蕉视频污在线| 日本精品人妻无码77777| 中文字幕av不卡| 福利视频网站一区二区三区| 99热6这里只有精品| 国产精品视频一二| 成人黄色免费短视频| 色综合av在线| 一区二区三区不卡视频| 91精品人妻一区二区三区蜜桃2| 欧美亚洲综合网| 亚洲午夜激情网页| 波多野结衣有码| 日韩美女视频在线| 蜜臀91精品一区二区三区| 日韩人妻无码一区二区三区| www久久精品| 国产精品综合二区| avove在线播放| 亚洲综合图片区| 一边摸一边做爽的视频17国产| 日韩一区二区视频| 激情久久久久久久久久久久久久久久| 91精品人妻一区二区三区| 国产亚洲综合色| 成人国产亚洲欧美成人综合网 | 精久久久久久久久久久| 美国美女黄色片| 国产精品久久久久久福利一牛影视| 成人福利在线看| 欧美日韩午夜影院| 蜜桃在线一区二区三区| 无码人妻精品中文字幕| 亚洲免费在线电影| 搡老熟女老女人一区二区| 久久精品网站免费观看| www.欧美精品一二区| 5858s免费视频成人| 激情亚洲综合在线| 色婷婷激情一区二区三区| 午夜亚洲国产au精品一区二区| 国内精品久久99人妻无码| 国产欧美一区二区精品秋霞影院| av成人免费在线观看| 91精品欧美一区二区三区综合在| 狠狠色丁香婷综合久久| 色悠悠亚洲一区二区| 午夜精品福利久久久| 中文字幕第69页| 亚洲一区欧美一区| 国产123在线| 一区二区免费看| 性欧美一区二区| 亚洲激情男女视频| 舐め犯し波多野结衣在线观看| 亚洲日本在线看| 18禁裸乳无遮挡啪啪无码免费| 国产精品的网站| 国产艳俗歌舞表演hd| 亚洲欧洲精品天堂一级| 免费在线观看成年人视频| 亚洲欧洲无码一区二区三区| 黄色网址在线视频| 成人免费视频在线观看| 亚洲黄色在线网站| 亚洲精品日韩一| 欧美福利在线视频| 石原莉奈一区二区三区在线观看| 欧美精品久久久久久久久46p| 首页欧美精品中文字幕| 婷婷色中文字幕| 久久 天天综合| 欧美日韩专区在线| 国产成人av一区二区三区在线| 91精品国产综合久久精品| 成人免费毛片高清视频| 日韩一级黄色大片| 国产免费无码一区二区| 国产精品美女久久久久av爽李琼| v8888av| 亚洲精品成人在线| 欧美一级片在线视频| 美女一区二区视频| 在线不卡一区二区| 99久久免费精品高清特色大片| 久久久久国产精品厨房| 亚洲观看黄色网| 亚洲综合av网| 一本久道久久综合中文字幕| 国产精品白丝jk白祙喷水网站| 日韩欧美成人一区| 国产精品入口麻豆| 一区二区在线观看av| 色综合久久久久综合| 国产精品伊人色| 久久亚洲私人国产精品va媚药| 熟妇人妻久久中文字幕| 亚洲最大成人网4388xx| 色婷婷国产精品久久包臀| 国产不卡免费视频| 久久久久久久久伊人| 美女被到爽高潮视频| 石原莉奈在线亚洲二区| 欧美久久婷婷综合色| 日本中文字幕精品| 依依成人综合视频| 色噜噜狠狠成人中文综合| 成人精品视频一区二区三区| 久久久国产一区二区三区四区小说| 成人性生交大免费看| 日本欧美一区二区三区| 欧美一区二区国产| 日本黄色录像片| 日韩 欧美一区二区三区| 欧美一区二视频| 日本黄色片在线播放| 日韩av不卡一区二区| 日韩三级电影网址| 性久久久久久久久久| 奇米777欧美一区二区| 日韩三级在线观看| 亚洲码无人客一区二区三区| 久久精品99久久久| 久久看人人爽人人| 色www亚洲国产阿娇yao| 国产精品一区二区不卡| 欧美国产日韩亚洲一区| 中文字幕电影av| www.欧美色图| 亚洲自拍偷拍av| 在线不卡中文字幕| 波多野结衣办公室33分钟| 麻豆精品在线播放| 国产亚洲短视频| 亚洲xxxx3d动漫| 91视频在线看| 亚洲成人精品一区| 日韩欧美一区中文| 欧美精品日韩在线| 国产成人精品aa毛片| 亚洲少妇30p| 欧美精品1区2区| 无码h肉动漫在线观看| 国产美女在线观看一区| 国产精品久久三| 欧美三级电影在线观看| 极品人妻一区二区三区| 国产精品一区二区在线观看网站| 国产精品久久久久影院老司 | 91精品麻豆日日躁夜夜躁| 久久久久久久久免费看无码| 韩国午夜理伦三级不卡影院| 国产精品免费视频观看| 欧美午夜不卡在线观看免费| jizz日本免费| 国产精品69久久久久水密桃| 亚洲人成网站影音先锋播放| 777午夜精品视频在线播放| a级片在线观看| www.亚洲色图| 日韩精品乱码免费| 日本一区二区电影| 欧美日韩国产bt| 69视频在线观看免费| 成人午夜碰碰视频| 午夜免费欧美电影| 国产情人综合久久777777| 欧美亚洲国产bt| 亚洲AV无码成人精品区明星换面| 成人高清免费在线播放| 日韩在线一区二区三区| 国产精品毛片久久久久久久| 欧美人与禽zozo性伦| 日本伦理一区二区三区| 潘金莲一级淫片aaaaaaa| 韩国欧美国产一区| 一二三区精品视频| 久久久久99精品国产片| 欧美视频在线一区二区三区 | 乱一区二区av| 综合久久国产九一剧情麻豆| 日韩一区二区三区精品视频| 我要看一级黄色录像| 中文视频在线观看| 成人高清视频在线观看| 老司机午夜精品99久久| 一区二区在线观看免费视频播放| 精品国产百合女同互慰| 欧美午夜免费电影| 欧美福利在线视频| 久久人人妻人人人人妻性色av| 成人sese在线|