自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

用Docker-Maven-Plugin構(gòu)建SpringBoot鏡像,帶勁!

開發(fā) 前端
本篇主要介紹下如何通過 IntelliJ IDEA、Maven 來操作 Docker 部署 Spring Boot 項目,這也是我們 Java 程序員最關(guān)心的開發(fā)實戰(zhàn)。

Docker 一次構(gòu)建、處處運行及快速啟停的特性,在微服務(wù)架構(gòu)中有著舉足輕重的地位,具體的概念性的東西就不介紹了礎(chǔ)教程。

本篇主要介紹下如何通過 IntelliJ IDEA、Maven 來操作 Docker 部署 Spring Boot 項目,這也是我們 Java 程序員最關(guān)心的開發(fā)實戰(zhàn)。

一、Maven 插件配置

首先在 Maven pom.xml 配置文件中加入 Docker 的 Maven 插件。

在配置文件pom.xml的build模塊中添加docker-maven-plugin 插件配置:

<build>
        <!--打包名稱-->
        <finalName>springboot-hertzbeat</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>dockerfile-maven-plugin</artifactId>
                <version>1.4.13</version>
                <!--下面這段代表執(zhí)行package就build項目中的Dockerfile-->
                <executions>
                    <execution>
                        <id>default</id>
                        <phase>package</phase>
                        <goals>
                            <goal>build</goal>
                        </goals>
                    </execution>
                </executions>
                <!--下面這段代表產(chǎn)出的內(nèi)容-->
                <configuration>
                    <repository>itlaoqi/${project.artifactId}</repository>
                    <tag>${project.version}</tag>
                    <buildArgs>
                        <JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
                    </buildArgs>
                </configuration>
            </plugin>
        </plugins>
    </build>

此插件的環(huán)境要求:

  • JDK 7+
  • Apache Maven 3.5.2+
  • 我的jdk版本是1.8,maven版本是3.8.6

圖片圖片

二、Docker 配置

Dockerfile 是創(chuàng)建 Docker 鏡像的基本配置文件,本身是一個文本文件。

插件默認(rèn)加載位置為項目所在根目錄,因為我在上面的 Maven 插件配置中指明了路徑。所以,在 項目的根 目錄下添加一個 Dockerfile 文件:

圖片圖片

其中,AGR JAR_FILE對應(yīng)了pom.xml文件中的${project.build.finalName}.jar,也就是生成的jar包名字。

# 基礎(chǔ)鏡像
FROM  openjdk:8-jre
# 指定路徑
ARG JAR_FILE
# 復(fù)制jar文件到路徑
COPY /target/${JAR_FILE} /app.jar
# 啟動認(rèn)證服務(wù)
ENTRYPOINT ["java","-jar","-Duser.timeznotallow=GMT+08","app.jar"]
EXPOSE 9682

三、添加測試接口

圖片圖片

四、構(gòu)建 Docker 鏡像

配置了 Maven 插件和 Dockerfile 文件后就可以開始構(gòu)建 Docker 鏡像了。

上面也說了,Docker 構(gòu)建過程已經(jīng)集成到了 Maven 的構(gòu)建過程之中,那么可以直接使用 mvn package 就可以同時打包和構(gòu)建 Docker 鏡像了。

因為我電腦不想安裝docker,于是將代碼上傳到了gitlab,然后在服務(wù)器上通過git clone拉取了代碼。

圖片圖片

此時執(zhí)行命令:mvn package -DskipTests,等待片刻使用docker images命令查看就會發(fā)現(xiàn)已經(jīng)構(gòu)建好了一個新的鏡像itlaoqi/springboot-hertzbeat。

五、IDEA 怎么操作 Docker

一旦我們創(chuàng)建了 Dockerfile 文件,IDEA 就會自動識別并提示我們創(chuàng)建 Docker 連接,當(dāng)然,我們也可以調(diào)出 Services 面板進行手動創(chuàng)建。

打開 IDEA 中的 Services 面板:

圖片圖片

創(chuàng)建完后會自動連接上,點擊展開會顯示 Docker 遠程(本地)所有鏡像和容器:

圖片圖片

如上圖所示,就是我們剛構(gòu)建的鏡像。

六、創(chuàng)建并運行容器

右擊上面的鏡像,選擇 "Create Container" 菜單來創(chuàng)建并運行一個容器。

圖片圖片

注意:綁定端口這里不要寫主機,如果啟動不起來,具體錯誤可以查看預(yù)覽命令

圖片圖片

項目在 Docker 中運行起來了,

圖片圖片

然后再訪問下上面寫的測試接口:

http://xxxxx:9682/hello

圖片圖片

責(zé)任編輯:武曉燕 來源: 程序員恰恰
相關(guān)推薦

2020-12-31 05:57:36

DockerSpringBootMaven

2014-11-18 10:37:15

dockerlinux技巧

2016-07-01 14:43:32

DockerServerless

2017-03-24 09:24:21

HarborDocker鏡像倉庫

2024-02-20 08:08:43

2020-11-12 07:51:05

DockerSpring Boot應(yīng)用

2017-11-13 17:17:11

Docker鏡像Go

2022-09-06 10:39:38

Docker鏡像構(gòu)建

2021-06-17 09:50:45

Docker Buil系統(tǒng)架構(gòu)Linux

2023-12-04 16:18:30

2021-08-23 08:30:30

Docker BuildKit 架構(gòu)

2023-09-10 07:20:35

2021-02-23 15:05:55

Docker鏡像開發(fā)

2021-12-07 06:02:15

Redis Docker運維

2022-07-15 14:54:00

DockerLinux技巧

2023-07-03 08:52:31

容器Golang

2025-01-26 16:57:02

2020-03-19 10:44:19

DockerSpring Boo單層鏡像

2016-01-28 10:07:07

DockerDocker鏡像

2019-10-21 11:43:00

DockerGradleJava
點贊
收藏

51CTO技術(shù)棧公眾號