Docker如何多步构建生成dubbo-admin镜像详解

2025-05-27 0 58

前言

Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。从服务模型的角度来看,Dubbo采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色。关于注册中心、协议支持、服务监控等内容。

Docker是支持多步构建的,对于需要编译源代码的那种构建,多步构建一方面可以获得更小的镜像,另外一方面也不需要手动清理源代码和别的文件了。

有时候本地调试的时候需要起一个dubboadmin看一下,但是每次都是启动一个tomcat,然后拷贝war,久了也有点麻烦。想从Docker镜像启动一个,但是官方没有提供。网上有不少个人构建的镜像,但是版本有些旧了。索性自己搞一下放在Docker hub。

手动操作比较直接,克隆代码库,然后maven打包出war包,放tomcat运行即可。

多步构建的Dockerfile如下:

?

1

2

3

4

5

6

7

8

9

10
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

运行的时候提供一下注册中心的环境变量(dubbo.registry.address)即可。

如果是docker-compose中的写法如下:

?

1

2

3

4

5

6

7

8

9

10

11

12

13
version: '3'

services:

zookeeper:

image: zookeeper

admin:

image: htynkn/dubbo-admin

depends_on:

- zookeeper

ports:

- 8080

environment:

- dubbo.registry.address=zookeeper://zookeeper:2181

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对快网idc的支持。

原文链接:https://www.huangyunkun.com/2018/04/19/docker-multi-step-dubbo-admin/

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 行业资讯 Docker如何多步构建生成dubbo-admin镜像详解 https://www.kuaiidc.com/67704.html

相关文章

发表评论
暂无评论