Docker 部署 Apollo 分布式配置管理中心

Apollo(阿波罗)是一款可靠的分布式配置管理中心,诞生于携程框架研发部,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。

镜像拉取

# 配置服务,负责:配置的读取和推送
docker pull apolloconfig/apollo-configservice

# 管理服务,负责:配置的管理和发布
docker pull apolloconfig/apollo-adminservice

# 管理门户,负责:提供了可视化的管理界面
docker pull apolloconfig/apollo-portal

 

安装程序
1. 配置与管理服务
当需要隔离多种环境数据时,如:DEV、UAT、PRO,需要为每个环境同时安装 apollo-configservice  和 apollo-adminservice,并配置独立的 ApolloConfigDB 数据库
⑴ 创建 apollo-configservice(环境配置)数据库,sql脚本:https://github.com/apolloconfig/apollo/blob/master/scripts/sql/profiles/mysql-default/apolloconfigdb.sql,修改ServerConfig表中eureka为内网可互通的地址(可以替换成现有的eureka注册中心,填写多个实现高可用)

 

⑵ 注意替换成自己的 mysql 数据库

# 配置服务,负责:配置的读取和推送;服务于 apollo客户端

docker run -d \
--name apollo-configservice \
--restart=unless-stopped \
-p 8080:8080 \
-e SPRING_DATASOURCE_USERNAME=root \
-e SPRING_DATASOURCE_PASSWORD=123456 \
-e SPRING_DATASOURCE_URL="jdbc:mysql://172.17.0.1:3306/ApolloConfigDB?characterEncoding=utf8" \
-v /var/log/apollo/configservice:/opt/logs \

apolloconfig/apollo-configservice

 

# 管理服务,负责:配置的管理和发布,服务于 apollo-portal

docker run -d \
--name apollo-adminservice \
--restart=unless-stopped \
-p 8090:8090 \
-e SPRING_DATASOURCE_USERNAME=root \
-e SPRING_DATASOURCE_PASSWORD=123456 \
-e SPRING_DATASOURCE_URL="jdbc:mysql://172.17.0.1:3306/ApolloConfigDB?characterEncoding=utf8" \
-v /var/log/apollo/adminservice:/opt/logs \

apolloconfig/apollo-adminservice

 

2. 可视化管理界面
创建 apollo-portal(可视化管理界面)数据库,sql脚本:https://github.com/apolloconfig/apollo/blob/master/scripts/sql/profiles/mysql-default/apolloportaldb.sql
# 管理门户,负责:提供了可视化的管理界面

docker run -d \
--name apollo-portal \
--restart=unless-stopped \
-p 8070:8070 \
-e SPRING_DATASOURCE_USERNAME=root \
-e SPRING_DATASOURCE_PASSWORD=123456 \
-e SPRING_DATASOURCE_URL="jdbc:mysql://172.17.0.1:3306/ApolloPortalDB?characterEncoding=utf8" \
# 表示配置中心有几个环境,示例:dev,pro
-e APOLLO_PORTAL_ENVS=dev,pro \
# DEV_META(测试环境)、PRO_META(生产环境)的 configservice 地址
-e DEV_META=http://172.17.0.1:8080 \
-e PRO_META=http://172.17.0.1:8080 \
-v /var/log/apollo/portal:/opt/logs \

apolloconfig/apollo-portal

 

访问测试
默认账号密码:apollo/admin

 

 

 官方文档:https://www.apolloconfig.com/#/zh/README

 

 
posted @ 2024-11-26 10:24  阳光下的行者  阅读(106)  评论(0编辑  收藏  举报