Skip to content

wnjustdoit/apollo-all-in-one-for-docker

Repository files navigation

apollo-all-in-one-for-docker

docker 一键部署 Apollo 分布式配置中心(简化部署流程和运维复杂性:直接使用官方开源镜像,在 docker-compose 的环境下运行 ./startup_{profile}.sh 即可)
注:以下演示以 docker-compose 版本 1.25.0 为准

使用 Apollo 至少要开三个服务,在容器化部署的过程中也踩了一些坑,于是自己动手写了个自动化部署运维脚本,解决了一些问题:

  1. 一键部署(提前准备好各个环境的配置,如线下线上);
  2. 使用 docker-compose + wait_for_it.sh 实现根据服务依赖关系顺序启动;
  3. 在容器默认 bridge 网络模式下,解决 eureka 注册中心的 ip 问题

使用说明(以 V1.7.1 版本为例)

第一步:初始化数据库
update ApolloConfigDB.serverconfig set `value` = 'http://172.16.141.109:8761/eureka/,http://172.16.141.110:8761/eureka/,http://172.16.141.111:8761/eureka/' where `key` = 'eureka.service.url';
第二步:更改各环境的配置 .env.{profile}
第三步:对应于各环境的启动脚本 startup_{profile}.sh

关于注册中心

默认值(数据库表:ApolloConfigDB.serverconfig)

http://localhost:8080/eureka/

使用内置的注册中心
  • 在 .env.{profile} 设置环境变量 APOLLO_EUREKA_SERVER_ENABLED=true
  • 更改数据库配置的注册中心地址,如:http://{宿主机 ip}:{configserver 端口}/eureka/
使用外部的注册中心(默认支持)
  • 直接更改数据库配置为外部的注册中心地址即可(当前服务所在的宿主机必须能够访问到的 ip 和端口)

About

docker 一键部署 Apollo 分布式配置中心

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages