国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Maven打包構(gòu)建Docker鏡像并推送到倉庫

這篇具有很好參考價值的文章主要介紹了Maven打包構(gòu)建Docker鏡像并推送到倉庫。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

Maven打包構(gòu)建Docker鏡像并推送到倉庫


對于開發(fā)完成的服務(wù)要發(fā)布至服務(wù)器Docker時,我剛學習了解Docker時構(gòu)建鏡像方式是將我的本地服務(wù)先通過maven打包稱為jar包,然后再上傳至我的服務(wù)器上,通過Dockerfile將其構(gòu)建成為鏡像。后來才了解了直接通過maven命令直接打包構(gòu)建的方式,以下是完成這一操作的步驟。

一,服務(wù)器Docker配置

修改daemon.json文件,開放端口2375

"hosts": ["tcp://0.0.0.0:2375", "unix:///var/run/docker.sock"]

我的文件如下所示:

{
  	"insecure-registries":["10.xx.xx.xx:5000"],
	"hosts": ["tcp://0.0.0.0:2375", "unix:///var/run/docker.sock"]
}
{
"graph":"/Data/docker"
}

二,本地項目maven配置

2.1 pom.xml

在項目的pom文件引入docker-maven-plugin插件

<plugin>
                <!-- https://mvnrepository.com/artifact/com.spotify/docker-maven-plugin -->
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>1.2.2</version>
                <executions>
                    <!-- 當mvn執(zhí)行install操作的時候,執(zhí)行docker的build和push -->
                    <execution>
                        <id>build</id>
                        <phase>install</phase>
                        <goals>
                            <goal>build</goal>
                            <!--                                <goal>push</goal>-->
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <!-- 連接到 帶docker環(huán)境的linux服務(wù)器 編譯image -->
                    <dockerHost>http://10.xx.xx.xx:2375</dockerHost>

                    <!--格式:私有倉庫/鏡像名稱:版本號, 如果要執(zhí)行push操作, 那么鏡像名稱必須為私有倉庫為前綴,不然無效。-->
                    <imageName>10.xx.xx.xx:5000/${project.artifactId}:${docker.tag}</imageName>

                    <!--指定dockerfile文件路徑-->
                    <dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>

                    <!-- 指定jar包路徑,這里對應(yīng)Dockerfile中復制 jar 包到 docker 容器指定目錄配置,也可以寫到 Docokerfile 中 -->
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>

                    <!--跳過測試-->

                    <!-- push到 docker hub 開始 -->
                    <!-- serverId 這個是配置在maven的setting.xml中私服的登錄賬戶信息-->
                    <!--                    <serverId>docker-hub</serverId>-->
                    <retryPushCount>3</retryPushCount>
                    <retryPushTimeout>2000</retryPushTimeout>
                    <registryUrl>10.xx.xx.xx:5000</registryUrl>
                    <!-- 是否自動推送到Registry Server, 建議手動推送 -->
                    <pushImage>${docker.push}</pushImage>
                    <!-- push到 docker hub 結(jié)束 -->
                </configuration>
            </plugin>

重要配置解釋:

  • dockerHost:docker所在服務(wù)器的ip和開放的端口
  • imageName:最終構(gòu)建的鏡像名稱
  • dockerDirectory:本地dockerfile文件存放路徑
  • targetPath:本地jar包生成位置
  • registryUrl:服務(wù)器docker的倉庫地址
  • pushImage:是否在構(gòu)建鏡像后同時推送到Docker倉庫

2.2 dockerfile

在本地項目的src/main下創(chuàng)建docker目錄,在docker目錄下創(chuàng)建dockerfile文件

FROM 10.xx.xx.xx:5000/java
VOLUME /tmp
ENV LANG C.UTF-8
COPY *.jar app.jar
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 
RUN echo "Asia/Shanghai" > /etc/timezone 
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom", "-Djava.util.Arrays.useLegacyMergeSort=true", "-jar","app.jar"]

2.3 驗證

此時,對該項目進行mvn install時,相當于會同時進行docker:build的動作,將本地項目jar包構(gòu)建成鏡像到服務(wù)器中

2.4 統(tǒng)一dockerfile

如果每個服務(wù)的鏡像構(gòu)建沒有差異,可以將dockerfile從子項目中抽出來,就不需要在每一個項目模塊中都創(chuàng)建相同的文件,直接放在項目根路徑下就可以進行通用,同時修改pom配置

	<!--指定dockerfile文件路徑-->
	<dockerDirectory>${project.parent.basedir}/docker</dockerDirectory>

此時的dockerfile存儲位置為項目父級目錄的docker文件夾下。文章來源地址http://www.zghlxwxcb.cn/news/detail-454601.html

到了這里,關(guān)于Maven打包構(gòu)建Docker鏡像并推送到倉庫的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Idea使用Docker插件實現(xiàn)maven打包自動構(gòu)建鏡像

    Idea使用Docker插件實現(xiàn)maven打包自動構(gòu)建鏡像

    Docker 開啟TCP 服務(wù) 改寫以下內(nèi)容 重啟服務(wù) 此時docker已經(jīng)開放了2375端口,使用外部主機訪問 http://docker:2375/info IDEA 集成Docker 安裝Docker 插件 配置docker服務(wù)地址 點擊view-services,打開docker的操作面板 雙擊docker01可以看到此docker服務(wù)下鏡像和容器 右擊docker鏡像,可以創(chuàng)建新的容器,

    2024年02月10日
    瀏覽(31)
  • 【Docker】使用docker-maven-plugin插件構(gòu)建發(fā)布推鏡像到私有倉庫

    【Docker】使用docker-maven-plugin插件構(gòu)建發(fā)布推鏡像到私有倉庫

    本文描述了在Spring Boot項目中通過docker-maven-plugin插件把項目推送到私有docker倉庫中,隨后拉取倉庫中的項目用docker run運行項目。作者自行構(gòu)建,質(zhì)量有保證。 1、要想使用 docker-maven-plugin ,需要在 pom.xml 中添加該插件; 注:注意下db:3306 2、我們構(gòu)建鏡像之前需要先將項目打包

    2024年02月15日
    瀏覽(16)
  • 使用git把本地項目關(guān)聯(lián)遠程代碼倉庫,并推送到遠程倉庫

    你在本地新建了一個項目,寫好了代碼,但是沒有關(guān)聯(lián)遠程倉庫,怎么關(guān)聯(lián)并上傳呢? 你要先去gitee創(chuàng)建一個代碼倉庫,然后復制http地址。 首次提交項目代碼到一個新建的遠程倉庫: 方式一(推薦): 1、在項目目錄中右鍵 git bash here。 通過命令 git init 把這個目錄變成git可以

    2024年02月08日
    瀏覽(100)
  • github cli 創(chuàng)建遠程倉庫并推送到github

    以下操作基于macOS,其他系統(tǒng)安裝請參閱官方文檔cli/cli: GitHub’s official command line tool。 以下操作步驟基本上就是上下方向鍵進行選擇,然后回車。Token需要訪問這里手動創(chuàng)建并粘貼。Token的權(quán)限應(yīng)該至少包括 repo , read:org , admin:public_key . 基本上就是輸入 gh repo create 然后一路根

    2024年02月02日
    瀏覽(22)
  • 本地鏡像如何推送到docker 倉庫

    本地鏡像如何推送到docker 倉庫

    要將本地鏡像推送到Docker倉庫,需要按照以下步驟操作: 1. 首先,使用`docker login`命令登錄到Docker倉庫。輸入用戶名和密碼進行身份驗證。 2. 然后,使用`docker tag`命令為本地鏡像添加標簽。語法為`docker tag [本地鏡像ID] [倉庫地址]/[鏡像名稱]:[標簽]`。其中,`[倉庫地址]`是Do

    2024年02月08日
    瀏覽(24)
  • Git 一份代碼如何同時提交并推送到兩個倉庫

    博文目錄 Git - 將一個項目同時從本地推送到 GitHub 和 Gitee 一份代碼如何同時提交并推送到兩個倉庫, 需要明確從哪個倉庫拉取代碼 查看倉庫綁定情況 再綁定另外一個遠程倉庫, 該倉庫只推不拉 這時候執(zhí)行推送, 大概率只能成功推到第一個倉庫, 后綁定的倉庫會拒絕, 要求先獲

    2023年04月08日
    瀏覽(15)
  • vs code創(chuàng)建新的本地分支并推送到遠程倉庫

    vs code創(chuàng)建新的本地分支并推送到遠程倉庫

    代碼倉庫使用的gitee(這個沒有影響,操作都是一樣的) 前提:本地與遠程倉庫已建立聯(lián)系,本地已有一個分支(此處命名master) 需求:本地新建一個分支,并推送到遠程倉庫 在這里可以看到變化的內(nèi)容 ?第一步: 所有變動過的文件都會展示在“更改”下方 點擊文件后的“

    2024年01月23日
    瀏覽(29)
  • IDEA制作docker鏡像推送到docker hub和阿里云鏡像倉庫

    IDEA制作docker鏡像推送到docker hub和阿里云鏡像倉庫

    學習如何本地制作鏡像推送到遠程倉庫管理,希望可以幫到有需要的人 準備工作: ? ? ? ? 1.注冊docker hub賬號,下載Docker Desktop Windows版本 ? ? ? ? 2.注冊阿里云賬號,開通容器鏡像服務(wù)個人版 注意事項 Docker Desktop的安裝教程網(wǎng)上有很多,這里不做教程,這里提醒一點避免安

    2024年01月19日
    瀏覽(94)
  • 【DevOps-08-4】Jenkins實現(xiàn)自定義鏡像并推送到Harbor

    打開Jenkins管理后臺,進入項目詳情 在構(gòu)建-增加構(gòu)建步驟-執(zhí)行shell 添加編寫構(gòu)建執(zhí)行shell腳本 更改Springboot java項目源碼版本,并提交到Gitlab 登錄到Gitlab管理后臺,新建一個v3.0的tag 到Jenkins管理后臺,對項目執(zhí)行構(gòu)建 構(gòu)建記錄詳情,查看構(gòu)建日志 在宿主機查看使用Jenkins打包

    2024年01月19日
    瀏覽(20)
  • Docker|kubernetes|本地鏡像批量推送到Harbor私有倉庫的腳本

    Docker|kubernetes|本地鏡像批量推送到Harbor私有倉庫的腳本

    前言: 可能有測試環(huán)境,而測試環(huán)境下有N多的鏡像,需要批量導入到自己搭建的Harbor私有倉庫內(nèi),一般涉及到批量的操作,自然還是使用腳本比較方便。 本文將介紹如何把某個服務(wù)器的本地鏡像?推送到帶有安全證書的私有Harbor倉庫。 一, ###本例中,私有Harbor倉庫的地址是

    2024年02月10日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包