Docker如何多步構(gòu)建生成dubbo-admin鏡像詳解
前言
Dubbo是Alibaba開源的分布式服務(wù)框架,它最大的特點(diǎn)是按照分層的方式來架構(gòu),使用這種方式可以使各個層之間解耦合(或者最大限度地松耦合)。從服務(wù)模型的角度來看,Dubbo采用的是一種非常簡單的模型,要么是提供方提供服務(wù),要么是消費(fèi)方消費(fèi)服務(wù),所以基于這一點(diǎn)可以抽象出服務(wù)提供方(Provider)和服務(wù)消費(fèi)方(Consumer)兩個角色。關(guān)于注冊中心、協(xié)議支持、服務(wù)監(jiān)控等內(nèi)容。
Docker是支持多步構(gòu)建的,對于需要編譯源代碼的那種構(gòu)建,多步構(gòu)建一方面可以獲得更小的鏡像,另外一方面也不需要手動清理源代碼和別的文件了。
有時候本地調(diào)試的時候需要起一個dubbo-admin看一下,但是每次都是啟動一個tomcat,然后拷貝war,久了也有點(diǎn)麻煩。想從Docker鏡像啟動一個,但是官方?jīng)]有提供。網(wǎng)上有不少個人構(gòu)建的鏡像,但是版本有些舊了。索性自己搞一下放在Docker hub。
手動操作比較直接,克隆代碼庫,然后maven打包出war包,放tomcat運(yùn)行即可。
多步構(gòu)建的Dockerfile如下:
FROM maven:3-jdk-8 RUN git clone --depth 1 https://github.com/apache/incubator-dubbo-ops.git /source WORKDIR /source RUN mvn package -f dubbo-admin FROM tomcat:8.0-jre8 RUN rm -rf /usr/local/tomcat/webapps/ COPY --from=0 /source/dubbo-admin/target/*.war /usr/local/tomcat/webapps/ROOT.war EXPOSE 8080
運(yùn)行的時候提供一下注冊中心的環(huán)境變量(dubbo.registry.address
)即可。
如果是docker-compose中的寫法如下:
version: '3' services: zookeeper: image: zookeeper admin: image: htynkn/dubbo-admin depends_on: - zookeeper ports: - 8080 environment: - dubbo.registry.address=zookeeper://zookeeper:2181
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
Docker安裝mysql主從復(fù)制的實(shí)現(xiàn)步驟
MySQL主從復(fù)制是指數(shù)據(jù)可以從一個MySQL數(shù)據(jù)庫服務(wù)器主節(jié)點(diǎn)復(fù)制到一個或多個從節(jié)點(diǎn),本文主要介紹了Docker安裝mysql主從復(fù)制的實(shí)現(xiàn)步驟,感興趣的可以了解一下2024-03-03使用Nexus創(chuàng)建Docker倉庫的方法步驟
這篇文章主要介紹了使用Nexus創(chuàng)建Docker倉庫的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12Docker容器內(nèi)應(yīng)用服務(wù)自啟動的方法示例
這篇文章主要介紹了Docker容器內(nèi)應(yīng)用服務(wù)自啟動的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-09-09使用docker部署influxdb與 mongo的常用命令
這篇文章主要介紹了使用docker部署influxdb與 mongo的常用命令,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-05-05Docker部署Microsoft Sql Server詳細(xì)步驟
大家好,本篇文章主要講的是Docker部署Microsoft Sql Server詳細(xì)步驟,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12docker安裝部署 onlyoffice的詳細(xì)過程
本文給大家分享docker安裝部署 onlyoffice的詳細(xì)過程,通過圖文并茂實(shí)例相結(jié)合給大家分享安裝Docker Desktop及如何進(jìn)入BIOS設(shè)置CPU的虛擬化,感興趣的朋友一起看看吧2021-06-06Docker實(shí)踐之python應(yīng)用容器化
這篇文章主要介紹了Docker實(shí)踐之python應(yīng)用容器化,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-06-06關(guān)于docker部署的jenkins跑git上的程序的問題
這篇文章主要介紹了docker部署的jenkins跑git上的程序的相關(guān)知識,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11Idea通過docker compose?發(fā)布項(xiàng)目的過程
這篇文章主要介紹了Idea結(jié)合docker-compose發(fā)布項(xiàng)目,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-08-08