溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

docker?maven?plugin怎么快速部署微服務

發(fā)布時間:2022-04-16 10:51:21 來源:億速云 閱讀:266 作者:iii 欄目:開發(fā)技術

本篇內(nèi)容主要講解“docker maven plugin怎么快速部署微服務”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“docker maven plugin怎么快速部署微服務”吧!

    一、前置條件

    linux下裝好docker并啟動

    1.使用國內(nèi) daocloud 一鍵安裝命令

    curl -sSL https://get.daocloud.io/docker | sh

    2.啟動docker

    systemctl start docker.service

    二、部署方法

    1.開放遠程部署端口

    <1>修改 docker 的配置文件 /lib/systemd/system/docker.service
    <2>在 ExecStart 配置項上增加 -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

    docker?maven?plugin怎么快速部署微服務

    <3>保存退出
    <4>重新加載配置文件

    systemctl daemon-reload

    <5>重啟docker

    systemctl restart docker.service

    2.微服務pom文件新增插件配置

    project標簽下加入如下配置

    <build>
            <finalName>app</finalName>
            <plugins>
                <!-- maven打包springboot必備依賴 -->
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
                <!-- DockerMaven插件 -->
                <plugin>
                    <groupId>com.spotify</groupId>
                    <artifactId>docker-maven-plugin</artifactId>
                    <version>1.2.1</version>
                    <configuration>
                    	<!-- imageName標簽內(nèi)不可以有大寫字母 -->
                        <imageName>distribute-search/${project.artifactId}</imageName>
                        <!-- OpenJDK Java 11 + Maven 3.6 + Python 3.8 + pip 21 + node 16 + npm 7 + Gradle 6 -->
                        <baseImage>openkbs/jdk11-mvn-py3</baseImage>
                        <entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint>
                        <resources>
                            <resource>
                                <targetPath>/</targetPath>
                                <directory>${project.build.directory}</directory>
                                <include>${project.build.finalName}.jar</include>
                            </resource>
                        </resources>
                        <dockerHost>http://192.168.6.128:2375</dockerHost>
                        <forceTags>true</forceTags>
                    </configuration>
                </plugin>
            </plugins>
        </build>

    ps:
    imageName:打包后的docker鏡像名
    baseImage:基礎鏡像,相當于 Dockerfile 中的 FROM
    entryPoint:jar包啟動命令
    targetPath:jar包上傳位置
    directory:jar包上傳目錄,缺省時為 targetPath
    include:jar包名
    dockerHost:jar包上傳到哪臺機器
    forceTags:是否覆蓋機器上的同名鏡像

    3.修改application文件

    將涉及到ip地址的配置修改為部署后的機器ip,沒有就跳過

    docker?maven?plugin怎么快速部署微服務

    4.打包上傳并創(chuàng)建鏡像

    在微服務根目錄下執(zhí)行此命令

    mvn clean package -DskipTests docker:build

    ps:-DskipTests 打包時跳過測試

    docker?maven?plugin怎么快速部署微服務

    打包成功

    docker?maven?plugin怎么快速部署微服務

    docker images 查看結果

    docker?maven?plugin怎么快速部署微服務

    5.啟動容器

    # docker run --name <容器名> -p 80:80 -d <鏡像名>
    docker run --name eureka -p 9999:9999 -d distribute-search/eureka-server

    docker ps 查看結果

    docker?maven?plugin怎么快速部署微服務

    訪問微服務

    docker?maven?plugin怎么快速部署微服務

    到此,相信大家對“docker maven plugin怎么快速部署微服務”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關內(nèi)容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

    向AI問一下細節(jié)

    免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

    AI