Apollo生产环境整合springboot_Apollo

1.准备工作


  1. OS
  2. Apollo服务端:1.8+
  3. MySQL 5.6.5+

2.安装

本项目只安装了pro环境。

1.创建数据库

导入sql ,地址如下。

https://github.com/ctripcorp/apollo/blob/master/scripts/sql/apolloportaldb.sql
https://github.com/ctripcorp/apollo/blob/master/scripts/sql/apolloconfigdb.sql

2.调整服务端

1.调整ApolloPortalDB.serverconfig表

Apollo生产环境整合springboot_Apollo_02


  1. 使用的环境
  2. 组织描述
  3. 服务端地址(Config Service地址 默认端口为8080)

2.调整ApolloConfigDB.ServerConfig

Apollo生产环境整合springboot_spring boot_03

3.下载安装包

获取apollo-configservice、apollo-adminservice、apollo-portal安装包 地址:https://github.com/ctripcorp/apollo/releases

4.更改数据库配置

1.配置apollo-configservice

用程序员专用编辑器(如vim,notepad++,sublime等)打开config目录下的application-github.properties文件,修改完的效果如下:

# DataSource
spring.datasource.url = jdbc:mysql://localhost:3306/ApolloConfigDB?useSSL=false&characterEncoding=utf8
spring.datasource.username = someuser
spring.datasource.password = somepwd

2.配置apollo-adminservice的数据库连接信息

用程序员专用编辑器(如vim,notepad++,sublime等)打开config目录下的application-github.properties文件,修改完的效果如下:

# DataSource
spring.datasource.url = jdbc:mysql://localhost:3306/ApolloConfigDB?useSSL=false&characterEncoding=utf8
spring.datasource.username = someuser
spring.datasource.password = somepwd

3.配置apollo-portal的数据库连接信息

用程序员专用编辑器(如vim,notepad++,sublime等)打开config目录下的application-github.properties文件,修改完的效果如下:

local.meta=http://localhost:8080
#dev.meta=http://fill-in-dev-meta-server:8080
#fat.meta=http://fill-in-fat-meta-server:8080
#uat.meta=http://fill-in-uat-meta-server:8080
#lpt.meta=${lpt_meta}
pro.meta=http://localhost:8080
# DataSource
spring.datasource.url = jdbc:mysql://localhost:3306/ApolloPortalDB?useSSL=false&characterEncoding=utf8
spring.datasource.username = someuser
spring.datasource.password = somepwd

4.配置apollo-portal的meta service信息

使用程序员专用编辑器(如vim,notepad++,sublime等)打开apollo-portal-x.x.x-github.zip中config目录下的apollo-env.properties文件。修改完的效果如下:

local.meta=http://localhost:8080
pro.meta=http://localhost:8080

5.运行

导入服务器运行scripts/startup.sh

6.整合spring boot

1.修改pom文件

<dependency>
<groupId>com.ctrip.framework.apollo</groupId>
<artifactId>apollo-client</artifactId>
<version>1.3.0</version>
</dependency>

2.修改application配置

app:
id: 项目名称
apollo:
meta: http://127.0.0.1:8080(admin server 端口默认8080)
bootstrap:
enabled: true
eagerLoad:
enabled: true

3.SpringBootApplication加入注解

@EnableApolloConfig

6.页面配置

1.新建项目

Apollo生产环境整合springboot_spring boot_04

Apollo生产环境整合springboot_Apollo_05

红圈处为上面配置的组织名。

2.处理项目的配置项

Apollo生产环境整合springboot_sql_06

Apollo生产环境整合springboot_sql_07也可以直接输入全部配置项。

Apollo生产环境整合springboot_Apollo_08

更改配置之后需要点击发布,否则不会更改。

Apollo生产环境整合springboot_sql_09

7.验证

对于项目来说,因为配置放入了applicationcontent中,所以需要重启才能生效,但是通过以下代码不重启就能体现出生效。

@RestController
public class HelloController {

@Value("${server.port}")
String port;

@GetMapping("hi")
public String hi(String name) {
return "hi " + name + " ,i am from port:" + port;
}
}