Docker部署Apollo分布式环境

简介:

在一个Docker容器中部署Dev和Pro双配置环境。

应用镜像:https://hub.docker.com/r/idoop/docker-apollo/

里面说明很清晰,不过有些地方需要我们部署后手工调整,很坑啊。

一、创建数据库和表

参考:官方文档

创建三个数据库:

76c10a93929d14fb68f41f7052a05370bbd.jpg

然后分别通过官方的sql建立表结构

二、创建Docker容器

91b152b4813b538c54d921d4a1b4dce5394.jpg

经验证Network可以使用bridge桥接模式。

配置容器的ENV环境变量:

# 开启Portal,默认端口: 8070
PORTAL_DB: jdbc:mysql://192.168.1.28:3306/ApolloPortalDB?characterEncoding=utf8
PORTAL_DB_USER: root
PORTAL_DB_PWD: toor

# 开启dev环境, 默认端口: config 8080, admin 8090
DEV_DB: jdbc:mysql://192.168.1.28:3306/ApolloConfigDBDev?characterEncoding=utf8
DEV_DB_USER: root
DEV_DB_PWD: toor

# 开启pro环境, 默认端口: config 8083, admin 8093
DEV_DB: jdbc:mysql://192.168.1.28:3306/ApolloConfigDBPro?characterEncoding=utf8
DEV_DB_USER: root
DEV_DB_PWD: toor

我们都采用默认端口,注意不要跟其他容器端口冲突。

然后我们就启动容器吧。

三、调整配置

1.修改apollo默认密码

新版本可以在界面中进行修改了,进入用户管理界面:

47664fee595202b7c9eed6028893f1a2a39.jpg

官方文档中写的很明确,update or create,也就是用户名已存在的会进行更新。我们直接填写apollo,然后修改为新密码即可。

2.配置部门列表

修改ApolloPortalDB数据库,表ServerConfig的organizations字段:

5447e29e2eb3dfdaa94d417ce77e319df45.jpg

3.调整Pro的Eureka连接地址(很坑的一个地方)

默认的话都会连接到8080的Eureka上,这样会出问题的,配置混乱。

我们修改数据库ApolloConfigDBPro中的ServerConfig表里面的eureka.service.url字段

可以看到默认为8080,我们修改为8083即可。

8f58133f77ada4cc3b675339b746e952fa5.jpg

我们重启容器服务,然后可以验证一下:

访问8080端口和8083端口,看到都是对应的就说明配置正确了。

6047fd83a40b3e3b06331adc0a3187e9bd6.jpg

37b88a9d580faeddf240978d3bca9288ae5.jpg

 

目录
相关文章
|
10天前
|
Docker 容器 关系型数据库
【PolarDB-X从入门到精通】 第四讲:PolarDB分布式版安装部署(源码编译部署)
本期课程将于4月11日19:00开始直播,内容包括源码编译基础知识和实践操作,课程目标是使学员掌握源码编译部署技能,为未来发展奠定基础,期待大家在课程中取得丰富的学习成果!
【PolarDB-X从入门到精通】 第四讲:PolarDB分布式版安装部署(源码编译部署)
|
2天前
|
测试技术 Linux 网络安全
【好玩的开源项目】使用Docker部署SyncTV视频同步和共享平台
【4月更文挑战第16天】使用Docker部署SyncTV视频同步和共享平台
32 1
|
6天前
|
测试技术 Linux 数据安全/隐私保护
【Docker项目实战】使用Docker部署Seatsurfing预订座位系统
【4月更文挑战第12天】使用Docker部署Seatsurfing预订座位系统
32 3
|
9天前
|
JavaScript 前端开发 Docker
全栈开发实战:结合Python、Vue和Docker进行部署
【4月更文挑战第10天】本文介绍了如何使用Python、Vue.js和Docker进行全栈开发和部署。Python搭配Flask创建后端API,Vue.js构建前端界面,Docker负责应用的容器化部署。通过编写Dockerfile,将Python应用构建成Docker镜像并运行,前端部分使用Vue CLI创建项目并与后端交互。最后,通过Nginx和另一个Dockerfile部署前端应用。这种组合提升了开发效率,保证了应用的可维护性和扩展性,适合不同规模的企业使用。
|
9天前
|
Linux Shell 虚拟化
linux 部署docker容器虚拟化平台(二)--------docker 镜像制作方法
linux 部署docker容器虚拟化平台(二)--------docker 镜像制作方法
14 0
|
9天前
|
存储 Linux Shell
centos 部署docker容器 安装 、基本使用方法(一)
centos 部署docker容器 安装 、基本使用方法(一)
17 0
|
13天前
|
测试技术 Linux 数据安全/隐私保护
【Docker项目实战】使用Docker部署PicoShare共享文件平台
【4月更文挑战第5天】使用Docker部署PicoShare共享文件平台
46 4
|
14天前
|
jenkins 测试技术 持续交付
软件测试|docker搭建Jenkins+Python+allure自动化测试环境
通过以上步骤,你可以在Docker中搭建起Jenkins自动化测试环境,实现Python测试的自动化执行和Allure报告生成。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
34 6
|
Docker 容器
五分钟带你玩转apollo(七)docker极简部署,楼主亲测
五分钟带你玩转apollo(七)docker极简部署,楼主亲测
287 0
五分钟带你玩转apollo(七)docker极简部署,楼主亲测
|
21天前
|
Docker 容器
进入Docker容器中
进入Docker容器中
34 2