docker maven plugin快速部署微服務(wù)的詳細(xì)流程
一、前置條件
linux下裝好docker并啟動(dòng)
1.使用國內(nèi) daocloud 一鍵安裝命令
curl -sSL https://get.daocloud.io/docker | sh
2.啟動(dòng)docker
systemctl start docker.service
二、部署方法
1.開放遠(yuǎn)程部署端口
<1>修改 docker 的配置文件 /lib/systemd/system/docker.service
<2>在 ExecStart 配置項(xiàng)上增加 -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
<3>保存退出
<4>重新加載配置文件
systemctl daemon-reload
<5>重啟docker
systemctl restart docker.service
2.微服務(wù)pom文件新增插件配置
project標(biāo)簽下加入如下配置
<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標(biāo)簽內(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:基礎(chǔ)鏡像,相當(dāng)于 Dockerfile 中的 FROM
entryPoint:jar包啟動(dòng)命令
targetPath:jar包上傳位置
directory:jar包上傳目錄,缺省時(shí)為 targetPath
include:jar包名
dockerHost:jar包上傳到哪臺(tái)機(jī)器
forceTags:是否覆蓋機(jī)器上的同名鏡像
3.修改application文件
將涉及到ip地址的配置修改為部署后的機(jī)器ip,沒有就跳過
4.打包上傳并創(chuàng)建鏡像
在微服務(wù)根目錄下執(zhí)行此命令
mvn clean package -DskipTests docker:build
ps:-DskipTests 打包時(shí)跳過測試
打包成功
docker images 查看結(jié)果
5.啟動(dòng)容器
# docker run --name <容器名> -p 80:80 -d <鏡像名> docker run --name eureka -p 9999:9999 -d distribute-search/eureka-server
docker ps 查看結(jié)果
訪問微服務(wù)
三、總結(jié)
將Dockerfile寫在pom中方便項(xiàng)目管理,將微服務(wù)的 打包、上傳、鏡像創(chuàng)建操作 整合到一條命令中執(zhí)行
到此這篇關(guān)于docker maven plugin快速部署微服務(wù)的文章就介紹到這了,更多相關(guān)docker maven plugin微服務(wù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker 退出container后保持繼續(xù)運(yùn)行的操作
這篇文章主要介紹了Docker 退出container后保持繼續(xù)運(yùn)行的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03Docker 實(shí)現(xiàn)瀏覽器里開發(fā)Android應(yīng)用的功能
這篇文章主要介紹了Docker 實(shí)現(xiàn)瀏覽器里開發(fā)Android應(yīng)用的功能的相關(guān)資料,這里對(duì)布置環(huán)境做了詳細(xì)的步驟,也許你能用到這樣的功能,需要的朋友可以參考下2016-11-11Docker網(wǎng)絡(luò)配置(橋接網(wǎng)絡(luò)和自定義網(wǎng)絡(luò))自定義網(wǎng)絡(luò)設(shè)置ip方式
這篇文章主要介紹了Docker網(wǎng)絡(luò)配置(橋接網(wǎng)絡(luò)和自定義網(wǎng)絡(luò))自定義網(wǎng)絡(luò)設(shè)置ip方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01Docker 配置固定IP及橋接的實(shí)現(xiàn)方法
這篇文章主要介紹了Docker 配置固定IP和橋接的實(shí)現(xiàn)方法的相關(guān)資料,這里詳細(xì)介紹了Docker 的四種網(wǎng)絡(luò)模式及如何實(shí)現(xiàn)橋接的案例,需要的朋友可以參考下2016-10-10Docker構(gòu)建kubectl鏡像的實(shí)現(xiàn)步驟
這篇文章主要介紹了Docker構(gòu)建kubectl鏡像的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01docker容器源碼部署httpd用存儲(chǔ)卷部署網(wǎng)站(推薦)
這篇文章主要介紹了docker容器源碼部署httpd用存儲(chǔ)卷部署網(wǎng)站,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-12-12