一、下载源码
https://github.com/apolloconfig/apollo/tree/v2.0.0
二、本地环境
jdk 1.8
mysql 5.7
maven 3.6.3
三、IDEA运行源码
IDEA直接Open打开项目即可
需要依次启动configservice、adminservice、portal三个服务
基于apollo-assembly模块的ApolloApplication点击运行一下 右上角会有一个启动类
启动源码ConfigserviceApplication
点击ApolloApplication的编辑选项,在左上角复制一个Application 然后修改名称为ConfigserviceApplication,点击修改选项 打开添加虚拟机选项以及程序实参这两个按钮。驱动的时候指定参数
名称:ConfigserviceApplication
启动模块:apollo-assembly
虚拟机选项填写如下信息(填写ApolloConfigDB库的信息)
-Dapollo_profile=github
-Dspring.datasource.url=jdbc:mysql://81.70.105.201:3306/ApolloConfigDB?characterEncoding=utf8&serverTimezone=Asia/Shanghai
-Dspring.datasource.username=root
-Dspring.datasource.password=root
启动类:
com.ctrip.framework.apollo.assembly.ApolloApplication
程序实参:
--configservice
最后直接运行即可
启动源码AdminserviceApplication
点击ApolloApplication的编辑选项,在左上角复制一个Application 然后修改名称为ConfigserviceApplication,点击修改选项 打开添加虚拟机选项以及程序实参这两个按钮。驱动的时候指定参数
名称:AdminserviceApplication
启动模块:apollo-assembly
虚拟机选项填写如下信息(填写ApolloConfigDB库的信息)
-Dapollo_profile=github
-Dspring.datasource.url=jdbc:mysql://81.70.105.201:3306/ApolloConfigDB?characterEncoding=utf8&serverTimezone=Asia/Shanghai
-Dspring.datasource.username=root
-Dspring.datasource.password=root
启动类:
com.ctrip.framework.apollo.assembly.ApolloApplication
程序实参:
--adminservice
最后直接运行即可
启动源码PortalApplication
点击ApolloApplication的编辑选项,在左上角复制一个Application 然后修改名称为PortalApplication,点击修改选项 打开添加虚拟机选项按钮 这个启动类不需要填写程序实参的内容。驱动的时候指定参数
名称:PortalApplication
启动模块:apollo-portal
虚拟机选项填写如下信息(填写ApolloPortalDB库的信息)
-Dapollo_profile=github,auth
-Ddev_meta=http://localhost:8080/
-Dserver.port=8070
-Dspring.datasource.url=jdbc:mysql://81.70.105.201:3306/ApolloPortalDB?characterEncoding=utf8&serverTimezone=Asia/Shanghai
-Dspring.datasource.username=root
-Dspring.datasource.password=root
注1:这里指定了apollo_profile是
<font style="color:rgb(199, 37, 78);background-color:rgb(246, 246, 246);">github</font>
和<font style="color:rgb(199, 37, 78);background-color:rgb(246, 246, 246);">auth</font>
,其中<font style="color:rgb(199, 37, 78);background-color:rgb(246, 246, 246);">github</font>
是Apollo必须的一个profile,用于数据库的配置,<font style="color:rgb(199, 37, 78);background-color:rgb(246, 246, 246);">auth</font>
是从0.9.0新增的,用来支持使用apollo提供的Spring Security简单认证,更多信息可以参考Portal-实现用户登录功能注2:spring.datasource相关配置替换成你自己的数据库连接信息,注意数据库是
<font style="color:rgb(199, 37, 78);background-color:rgb(246, 246, 246);">ApolloPortalDB</font>
。注3:默认ApolloPortalDB中导入的配置只会展示DEV环境的配置,所以这里配置了dev_meta属性,如果你希望在本地展示其它环境的配置,需要在这里增加其它环境的meta服务器地址,如fat_meta。
注4:这里指定了server.port=8070是因为
<font style="color:rgb(199, 37, 78);background-color:rgb(246, 246, 246);">apollo-configservice</font>
启动在8080端口,所以这里配置<font style="color:rgb(199, 37, 78);background-color:rgb(246, 246, 246);">apollo-portal</font>
启动在8070端口。注5:程序默认日志输出为/opt/logs/100003173/apollo-portal.log,如果需要修改日志文件路径,可以增加
<font style="color:rgb(199, 37, 78);background-color:rgb(246, 246, 246);">logging.file</font>
参数,如下:-Dlogging.file=/your-path/apollo-portal.log
启动类:
com.ctrip.framework.apollo.portal.PortalApplication
最后直接运行即可
四、访问网址验证
三个类全部起来后访问:http://localhost:8070/
输入用户名apollo,密码admin后登录
五、新建Demo的DemoApplication
修改apollo-demo\src\main\resources\META-INF\app.properties下的app.id 跟项目中的Appid对应
点击ApolloApplication的编辑选项,在左上角复制一个Application 然后修改名称为DemoApplication,点击修改选项 打开添加虚拟机选项按钮 这个启动类不需要填写程序实参的内容。驱动的时候指定参数( 此处报错不用管)
名称:DemoApplication
启动模块:apollo-demo
虚拟机选项填写如下信息(注:这里当前环境的meta server地址为<font style="color:rgb(199, 37, 78);background-color:rgb(246, 246, 246);">http://localhost:8080</font>
,也就是<font style="color:rgb(199, 37, 78);background-color:rgb(246, 246, 246);">apollo-configservice</font>
的地址。)
-Dapollo.meta=http://localhost:8080
启动类:
com.ctrip.framework.apollo.demo.api.SimpleApolloConfigDemo
最后直接运行即可
输入timeout 按 回车 就能获取配置中心的值
六、编译打包源码
- 修改apollo-configservice, apollo-adminservice和apollo-portal的pom.xml,注释掉spring-boot-maven-plugin和maven-assembly-plugin
2.在根目录下执行<font style="color:rgb(233, 105, 0);background-color:rgb(248, 248, 248);">mvn clean package -pl apollo-assembly -am -DskipTests=true</font>
3.复制apollo-assembly/target下的jar包,rename为apollo-all-in-one.jar