Apollo(阿波罗)是携程框架部门研发的配置管理平台,可以集中化管理应用不一样环境、不一样集群的配置,配置修改后可以实时推送到应用端,而且具有规范的权限、流程治理等特性。服务端基于Spring Boot和Spring Cloud开发,打包后能够直接运行,不须要额外安装Tomcat等应用容器。Java客户端不依赖任何框架,可以运行于全部Java运行时环境,同时对Spring环境也有较好的支持。.Net客户端不依赖任何框架,可以运行于全部.Net运行时环境,并且已经支持.NET Core。mysql
官网:https://github.com/ctripcorp/apollogit
Wiki:https://github.com/ctripcorp/apollo/wiki(一切的集成方式和使用方法都在这里)github
Issues:https://github.com/ctripcorp/apollo/issues(若是期间有任何问题,请经过这里查找大部分解决方法)sql
说明:官方提供了分布式部署方案,可是基于本地开发和调试上通常是单机部署的比较多。且提供的Quick Start方案跑不起来。因此下面将针对单机搭建上作详细的实践,用做开发环境。数据库
注意:若是是生产环境必定要使用分布式部署方案来作高可用集群。服务器
下载Release版本:https://github.com/ctripcorp/apollo/releases框架
一、环境:分布式
JDK:1.8.0_161ui
Maven:3.5.2命令行
MySQL:5.7.18
apollo:0.9.1
二、解压
wget https://github.com/ctripcorp/apollo/archive/v0.9.1.tar.gz
tar zxvf apollo-0.9.1.tar.gz
三、导入数据库文件
登陆MySQL命令行,而后执行
/data/apollo/apollo-0.9.1/scripts/sql/apolloconfigdb.sql
/data/apollo/apollo-0.9.1/scripts/sql/apolloportaldb.sql
四、打包
修改/data/apollo/apollo-0.9.1/scripts/build.sh,把数据库帐号密码修改成咱们的密码以及mysql 服务器地址。只保留dev_meta,其余的都删除
#
dev_meta=http://localhost:8080
META_SERVERS_OPTS="-Ddev_meta=$dev_meta"
而后执行
./build.sh
该脚本会依次打包apollo-configservice, apollo-adminservice, apollo-portal和apollo-client。
五、启动
apollo-configservice:
切换到目录 /data/apollo/apollo-0.9.1/apollo-configservice/target,解压apollo-configservice-0.9.1-github.zip
unzip apollo-configservice-0.9.1-github.zip –d test
执行脚本启动服务
./startup.sh
apollo-adminservice:
切换到目录 /data/apollo/apollo-0.9.1/apollo-adminservice/target,解压apollo-adminservice-0.9.1-github.zip
unzip apollo-adminservice-0.9.1-github.zip –d test
执行脚本启动服务
./startup.sh
apollo-portal:
apollo-portal的默认端口是8080,和apollo-configservice一致,因此若是须要在一台机器上同时启动apollo-portal和apollo-configservice的话,须要修改apollo-portal的端口。直接修改startup.sh中的SERVER_PORT便可,如SERVER_PORT=8070。
切换到目录 /data/apollo/apollo-0.9.1/apollo-portal/target,解压apollo-portal-0.9.1-github.zip
unzip apollo-portal-0.9.1-github.zip –d test
修改端口:
执行脚本启动服务
./startup.sh
六、访问
http://localhost:8070 ,默认用户名/密码参考 Portal 实现用户登陆功能。