第一步:确认运行环境
安装Apollo服务端1.8+版本,客户端1.7+版本
安装看1.8+版本
需要安装MySQL,在这里安装5.6.5+版本
Apollo的表结构对timestamp使用了多个default声明,所以需要5.6.5以上版本。
第二步:下载配置
下载Apollo
github下载:https://github.com/apolloconfig/apollo/tags
点击进入下面的界面:
在这里,我下载的是1.8.1版本的,点击右下角的download,进行下面的页面
将上方的三个红框中的zip压缩文件进行下载
这个下载比较慢。。。
因为我有1.8.0版本的,所以接下来以安装1.80版本的举例
百度网盘链接:链接:https://pan.baidu.com/s/1l25xqAFVNn7jUvMPElXS9Q
提取码:vzi9
这里面包含下面的内容
解压安装包后将会得到如图所示的三个jar包放置于apollo目录下
安装mysql
mysql的安装,比较简单,自己百度吧,基本上就是下一步下一步
第三步:创建数据库
Apollo服务端共需要两个数据库:ApolloPortalDB和ApolloConfigDB,ApolloPortalDB只需要在生产环境部署一个即可,而ApolloconfigDB需要在每个环境部署一套。
sql脚本下载地址:可以根据1.8.1版本的下载地址的目录结构去下载其他版本的sql脚本地址
https://github.com/apolloconfig/apollo/tree/v1.8.1/scripts/sql
创建ApolloPortalDB
打开sqlyog或者是其他的mysql客户端
执行外部脚本
选择ApolloPortalDB.sql文件
创建ApolloConfigDB
数据库最终展示
第四步:启动Apollo
1 确认端口没有被占用
Apollo默认会启动3个服务,分别使用8070,8080,8090端口,请确保这3个端口当前没有被使用
命令:
netstat -ano |findstr "端口号"
如下所示,则未被占用
2 启动apollo-configservice(8080)
启动apollo-configservice,在apollo目录下执行如下命令可通过-Dserver.port=8080修改默认端口
java -Xms256m -Xmx256m -Dspring.datasource.url=jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8 -Dspring.datasource.username=root -Dspring.datasource.password=root -jar apollo-configservice-1.8.0.jar
3 启动apollo-adminservice(8090)
java -Xms256m -Xmx256m -Dspring.datasource.url=jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8 -Dspring.datasource.username=root -Dspring.datasource.password=root -jar apollo-adminservice-1.8.0.jar
4 启动apollo-portal(8070)
java -Xms256m -Xmx256m -Ddev_meta=http://localhost:8080/ -Dspring.datasource.url=jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8 -Dspring.datasource.username=root -Dspring.datasource.password=root -jar apollo-portal-1.8.0.jar
5 使用bat进行全部直接启动(推荐)
@echo off
rem 端口号的配置(按自身情况修改)
set configServerPort=8080
set adminServerPort=8090
set portalPort=8070
rem 数据库的地址以及账号密码
set host=localhost:3306
set username=root
set password=root
@echo 正在启动configservice服务.....
start cmd /c "title configserver:%configServerPort% && java -Xms256m -Xmx256m -Dspring.datasource.url=jdbc:mysql://%host%/ApolloConfigDB?characterEncoding=utf8 -Dspring.datasource.username=%username% -Dspring.datasource.password=%password% -Dsever.port=%configServerPort% -jar apollo-configservice-1.8.0.jar"
rem 确保执行顺序
ping -n 20 127.0.0.1>nul
@echo 正在启动adminservice服务.....
start cmd /c "title adminserver:%adminServerPort% && java -Xms256m -Xmx256m -Dspring.datasource.url=jdbc:mysql://%host%/ApolloConfigDB?characterEncoding=utf8 -Dspring.datasource.username=%username% -Dspring.datasource.password=%password% -Dsever.port=%adminServerPort% -jar apollo-adminservice-1.8.0.jar"
rem 确保执行顺序
ping -n 15 127.0.0.1>nul
@echo 正在启动portal服务......
start cmd /c "title portal:%portalPort% && java -Xms256m -Xmx256m -Dapollo_profile=github,auth -Ddev_meta=http://localhost:%configServerPort%/ -Dspring.datasource.url=jdbc:mysql://%host%/ApolloPortalDB?characterEncoding=utf8 -Dspring.datasource.username=%username% -Dspring.datasource.password=%password% -Dsever.port=%portalPort% -jar apollo-portal-1.8.0.jar"
双击bat文件,便可以直接启动
报错解决:The server time zone value ‘?й???’
The server time zone value '?й???????' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support
说明数据库的时区对应不上
进入mysql,设置mysql的时区
set global time_zone='+08:00';
6 启动成功,进行验证
默认账号:apollo;密码admin
至此,安装成功