apollo多环境部署

一、环境准备

jdk : 1.8+ mysql 5.6.5+

二、安装包下载

https://github.com/ctripcorp/apollo/releases

下载如下三个压缩包

下载sql文件,下载地址 :https://github.com/apolloconfig/apollo-quick-start/tree/master/sql

三、部署apollo

1、新建安装目录,放置下载好的安装包

2、解压到当前目录

复制代码
# 创建模块目录
mkdir  apollo-adminservice-prod apollo-adminservice-dev apollo-portal
# 解压到对应的目录
unzip apollo-adminservice-1.6.0-github.zip -d apollo-adminservice-prod
unzip apollo-configservice-1.6.0-github.zip -d apollo-configservice-prod
unzip apollo-portal-1.6.0-github.zip -d apollo-portal

3、修改配置文件

3.1 修改生产环境adminservice、configservice配置

复制代码
--进入目录 
cd /opt/apollo
############################################ apollo-adminservice-prod ############################################
vim apollo-adminservice-prod/config/application-github.properties

# DataSource
spring.datasource.url = jdbc:mysql://127.0.0.1:3306/ApolloConfigDB?characterEncoding=utf8
spring.datasource.username = apollo
spring.datasource.password = IOT@1033Ff
 
############################################ apollo-configservice-prod ############################################
vim apollo-configservice/config/application-github.properties
 
# DataSource
spring.datasource.url = jdbc:mysql://127.0.0.1:3306/ApolloConfigDB?characterEncoding=utf8
spring.datasource.username = apollo
spring.datasource.password = IOT@1033Ff

3.2 复制生产环境的 adminservice 和 configservice目录,作为开发环境部署目录

复制代码
cp -r apollo-adminservice-prod apollo-adminservice-dev
cp -r  apollo-configservice-prod apollo-configservice-dev

修改开发环境配置

复制代码
############################################ apollo-adminservice-dev ############################################vim apollo-configservice/
vim apollo-configservice-dev/scripts/startup.sh

#!/bin/bash

SERVICE_NAME=apollo-adminservice

Adjust log dir if necessary

LOG_DIR=/opt/logs/100003182

Adjust server port if necessary

SERVER_PORT=${SERVER_PORT:=8190}

....

复制代码
############################################ apollo-configservice-dev ############################################vim apollo-configservice/
vim apollo-adminservice-dev/scripts/startup.sh

#!/bin/bash

SERVICE_NAME=apollo-configservice

Adjust log dir if necessary

LOG_DIR=/opt/logs/100003181

Adjust server port if necessary

SERVER_PORT=${SERVER_PORT:=8180}

.....

复制代码
## 这里该的配置主要是为了避免跟生产环境的adminservice、configservice端口冲突,日志文件也要改

3.3 修改portal配置

复制代码
############################################ apollo-portal ############################################
vim apollo-portal/config/application-github.properties
 
# DataSource
spring.datasource.url = jdbc:mysql://127.0.0.1:3306/ApolloPortalDB?characterEncoding=utf8
spring.datasource.username = apollo
spring.datasource.password = IOT@1033Ff

---------------------------------------------------------------------------

vim apollo-portal/config/apollo-env.properties

pro.meta=http://localhost:8080
dev.meta=http://localhost:8180
#local.meta=http://localhost:8080
#fat.meta=http://fill-in-fat-meta-server:8080
#uat.meta=http://fill-in-uat-meta-server:8080
#lpt.meta=${lpt_meta}

四、数据库初始化

4.1 使用docker启动mysql

复制代码
docker run --name mysql -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD="IOT@1033&ff" mysql:5.7

mysql> CREATE DATABASE ApolloPortalDB DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;

Query OK, 1 row affected (0.00 sec)

复制代码

mysql> CREATE DATABASE ApolloConfigDB DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;

Query OK, 1 row affected (0.00 sec)

复制代码

mysql> create user apollo@'%' identified by 'IOT@1033Ff';

Query OK, 0 rows affected (0.00 sec)

复制代码

mysql> grant all privileges on *.* to 'apollo'@'%';

Query OK, 0 rows affected (0.00 sec)

复制代码

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

导入数据

mysql -uapollo -p"IOT@1033Ff" ApolloConfigDB < /opt/apolloconfigdb.sql

mysql -uapollo -p"IOT@1033Ff" ApolloPortalDB < /opt/apolloportaldb.sql

修改【apolloportaldb数据库】【serverconfig表】字段:apollo.portal.envs、configView.memberOnly.envs、apollo.portal.meta.servers

五、启动服务

5.1 启动生产环境

复制代码
bash /opt/apollo/apollo-adminservice-prod/scripts/startup.sh
bash /opt/apollo/apollo-confingservice-prod/scripts/startup.sh

5.2 启动开发环境

复制代码
bash /opt/apollo/apollo-adminservice-dev/scripts/startup.sh
bash /opt/apollo/apollo-confingservice-dev/scripts/startup.sh

5.3 启动portal

复制代码
bash /opt/apollo/apollo-portal/scripts/startup.sh

六、访问

http://ip:8070 默认账号:apollo 默认密码:admin

点击实例项目。可以看到有两个环境列表

参考连接:

https://www.cnblogs.com/louwj/p/16017984.html