欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用Maven和遠(yuǎn)程Docker基于Dockerfile構(gòu)建SpringBoot應(yīng)用鏡像

 更新時(shí)間:2024年06月17日 10:22:43   作者:初衷不改~  
本文重點(diǎn)給大家介紹使用Maven和遠(yuǎn)程Docker基于Dockerfile構(gòu)建SpringBoot應(yīng)用鏡像的相關(guān)操作,感興趣的朋友跟隨小編一起看看吧

簡(jiǎn)介

由于本人開發(fā)環(huán)境是 Windows,但是生產(chǎn)環(huán)境是 Linux,應(yīng)用開發(fā)完后需要打包并構(gòu)建 Docker 鏡像,但是我不想在本地安裝 Docker,于是便使用遠(yuǎn)程的 Docker 進(jìn)行處理,以下是具體的步驟。

步驟

開啟遠(yuǎn)端 Docker 的訪問接口

本文以 Linux 環(huán)境下的配置為例,執(zhí)行以下命令編輯配置文件:

vim /usr/lib/systemd/system/docker.service

在 ExecStart 后面添加一行(表示啟動(dòng)2375端口用于監(jiān)聽遠(yuǎn)程操作)

-H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

執(zhí)行以下命令重啟 Docker 服務(wù)

systemctl daemon-reload && systemctl restart docker

系統(tǒng)中添加環(huán)境變量

系統(tǒng)中添加以下環(huán)境變量:

名稱:DOCKER_HOST
值:tcp://你 docker 所在的IP地址:上一步中配置的端口

如果這時(shí)候你的 IDEA 還是打開的,那么你需要關(guān)掉重啟 IDEA,否則環(huán)境變量的配置可能不會(huì)生效,或者你也可以直接使用命令的方式打包

配置插件

配置 SpringBoot 打包插件和 Docker 插件,由于我的項(xiàng)目中在父級(jí)的 pom 文件中已經(jīng)配置了插件版本管理,所以這里使用的插件是不需要 version 的,具體可以查詢 pluginManagement 這個(gè)關(guān)鍵字查看相關(guān)博文,這里不再贅述。

<build>
    <!--應(yīng)用程序打包后生成的 jar 名稱-->
    <finalName>your-app-name</finalName>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <!--需要加這個(gè),不然打包鏡像找不到啟動(dòng)文件-->
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <addResources>true</addResources>
            </configuration>
        </plugin>
        <plugin>
            <groupId>com.spotify</groupId>
            <artifactId>dockerfile-maven-plugin</artifactId>
            <configuration>
                <repository>cloud/${project.artifactId}</repository>
                <buildArgs>
                	<!--應(yīng)用打包后jar所在的地方,默認(rèn)是在target里面-->
                    <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
                </buildArgs>
            </configuration>
            </plugin>
    </plugins>
</build>

編寫 Dockerfile 文件

在你需要構(gòu)建鏡像的應(yīng)用的 pom 文件相同的目錄下,創(chuàng)建一個(gè)名為 Dockerfile 的文件,其內(nèi)容如下:

FROM eclipse-temurin:17
COPY target/your-app-name.jar your-app-name.jar
ENTRYPOINT ["java","-jar","/your-app-name.jar"]

第一行表示基于 JDK 17 鏡像;
第二行的 COPY,表示復(fù)制你打包好的 jar 包到鏡像中,這里的配置要和上一步驟中 pom 文件的配置吻合;
第三行表示容器啟動(dòng)后運(yùn)行的命令,這里簡(jiǎn)單使用 java -jar 運(yùn)行應(yīng)用即可。

構(gòu)建

首先打包你的程序,由于本人比較懶,就不使用命令的方式打包和構(gòu)建了,以 IDEA 為例,找到你要打包的模塊,點(diǎn)擊 package,這樣就會(huì)在 target 文件夾中生成一個(gè)jar包,如下圖所示,:

maven打包

接著找到下面的插件,找到dockerfile,build,這樣會(huì)調(diào)用遠(yuǎn)程的 Docker 進(jìn)行構(gòu)建,鏡像也會(huì)保存到遠(yuǎn)程的 Docker 中,如下圖所示:

構(gòu)建docker鏡像

看到控制臺(tái)中出現(xiàn)下面這樣的 BUILD SUCCESS 就算是成功了:

在這里插入圖片描述

接著我們?nèi)ミh(yuǎn)程的 Docker 查詢鏡像,可以看到鏡像已經(jīng)被構(gòu)建好了:

在這里插入圖片描述

到此這篇關(guān)于使用Maven和遠(yuǎn)程Docker基于Dockerfile構(gòu)建SpringBoot應(yīng)用鏡像的文章就介紹到這了,更多相關(guān)SpringBoot應(yīng)用鏡像內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring Boot 2.4 新特性之一鍵構(gòu)建Docker鏡像的過程詳解

    Spring Boot 2.4 新特性之一鍵構(gòu)建Docker鏡像的過程詳解

    這篇文章主要介紹了Spring Boot 2.4 新特性之一鍵構(gòu)建Docker鏡像的過程詳解,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12
  • gitlab-runner中搭建nvm、nrm以及優(yōu)化maven打包方式

    gitlab-runner中搭建nvm、nrm以及優(yōu)化maven打包方式

    文章描述了如何在GitLab Runner上配置NVM、NRM,并優(yōu)化Maven打包過程,通過上述配置和優(yōu)化,作者將Maven打包時(shí)間從三分鐘縮短到不到40秒
    2024-11-11
  • docker安裝pxc集群的詳細(xì)教程

    docker安裝pxc集群的詳細(xì)教程

    這篇文章主要介紹了docker安裝pxc集群的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-02-02
  • Docker CentOS7的系統(tǒng)上安裝部署以及基礎(chǔ)教程

    Docker CentOS7的系統(tǒng)上安裝部署以及基礎(chǔ)教程

    這篇文章主要介紹了Docker CentOS7的系統(tǒng)上安裝部署以及基礎(chǔ)教程的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • pod污點(diǎn)taint?與容忍度tolerations詳解

    pod污點(diǎn)taint?與容忍度tolerations詳解

    這篇文章主要為大家介紹了pod污點(diǎn)taint與容忍度tolerations示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • 讓非root用戶構(gòu)建Docker鏡像的三種方法

    讓非root用戶構(gòu)建Docker鏡像的三種方法

    在默認(rèn)情況下,Docker?需要?root?權(quán)限或?sudo?才能運(yùn)行,這對(duì)于日常開發(fā)和?CI/CD?流水線可能不夠方便,那么,如何讓?非?root?用戶?也能構(gòu)建和運(yùn)行?Docker?容器呢?本篇文章將介紹?三種方法?來實(shí)現(xiàn)這一目標(biāo),需要的朋友可以參考下
    2025-04-04
  • docker運(yùn)行nginx容器并掛載數(shù)據(jù)卷

    docker運(yùn)行nginx容器并掛載數(shù)據(jù)卷

    本文主要介紹了docker運(yùn)行nginx容器,并通過掛載目錄將容器與宿主機(jī)的數(shù)據(jù)進(jìn)行共享和統(tǒng)一管理,具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-03-03
  • docker容器分配固定ip的實(shí)現(xiàn)示例

    docker容器分配固定ip的實(shí)現(xiàn)示例

    如果不固定ip,每次主機(jī)重啟后,docker會(huì)動(dòng)態(tài)給容器分配ip,導(dǎo)致redis容器的IP自動(dòng)換了 ,然后還得去改配置就很煩,本文主要介紹了docker容器分配固定ip的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-12-12
  • Docker compose部署SpringBoot項(xiàng)目連接MySQL及遇到的坑

    Docker compose部署SpringBoot項(xiàng)目連接MySQL及遇到的坑

    這篇文章主要介紹了Docker compose部署SpringBoot項(xiàng)目連接MySQL,文中給大家強(qiáng)調(diào)了如果在使用的過程中修改了Dockerfile,一定要把之前的鏡像刪掉,具體內(nèi)容詳情跟隨小編一起看看吧
    2021-09-09
  • docker如何刪除<none>/dangling/懸空鏡像

    docker如何刪除<none>/dangling/懸空鏡像

    這篇文章主要介紹了docker如何刪除<none>/dangling/懸空鏡像問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11

最新評(píng)論