微服务配置中心-携程Apollo搭建

368 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路

Apollo(阿波罗)是一款可靠的分布式配置管理中心,诞生于携程框架研发部,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。

1、搭建方式1

搭建方式:docker

条件:

  • 服务器上需要安装docker和docker-compose

  • 准备好apollo需要的mysql数据库,sql脚本以下的地址中

1、初始化脚本到mysql数据库中

2、修改刚初始化后的数据库ApolloConfigDB,表ServerConfig中的eureka.service.url,改为docker映射出来的外网地址

# 我的地址是243
http://192.168.80.243:8080/eureka/

3、把如下docker-compose.yml脚本移动到服务器,注意修改mysql数据库连接,改为自己的

version: '2'
services:
  apolloConfig:
    image: apolloconfig/apollo-configservice:1.9.2
    restart: always
    container_name: apolloConfig
    ports:
      - '8080:8080'
    depends_on:
      - mysql
    volumes:
      - "/tmp/logs:/opt/logs"
    environment:
      SPRING_DATASOURCE_URL: jdbc:mysql://127.0.0.1:3306/ApolloConfigDB?characterEncoding=utf8
      SPRING_DATASOURCE_USERNAME: root
      SPRING_DATASOURCE_PASSWORD: 123456
  apolloAdmin:
    image:  apolloconfig/apollo-adminservice:1.9.2
    restart: always
    container_name: apolloAdmin
    ports:
      - '8090:8090'
    depends_on:
      - apolloConfig
    volumes:
      - "/tmp/logs:/opt/logs"
    environment:
      SPRING_DATASOURCE_URL: jdbc:mysql://127.0.0.1:3306/ApolloConfigDB?characterEncoding=utf8
      SPRING_DATASOURCE_USERNAME: root
      SPRING_DATASOURCE_PASSWORD: 123456
  apolloPortal:
    image:  apolloconfig/apollo-portal:1.9.2
    restart: always
    container_name: apolloPortal
    ports:
      - '8070:8070'
    depends_on:
      - apolloAdmin
    volumes:
      - "/tmp/logs:/opt/logs"
    environment:
      SPRING_DATASOURCE_URL: jdbc:mysql://127.0.0.1:3306/ApolloPortalDB?characterEncoding=utf8
      SPRING_DATASOURCE_USERNAME: root
      SPRING_DATASOURCE_PASSWORD: 123456
      APOLLO_PORTAL_ENVS: dev
      DEV_META: http://apolloConfig:8080

4、登录服务器,在脚本目录下依次执行以下命令启动apollo

docker-compose up -d apolloConfig
docker-compose up -d apolloAdmin
docker-compose up -d apolloPortal

5、在浏览器上输入 http://服务器IP:8070/,出现以下网页,用户名:`apollo`,密码:`admin`

2、搭建方式2

我把mysql脚本和docker-compose脚本全部放在gitee上,可以直接下载脚本后,直接执行docker-compose即可使用,不需要有自己的mysql

git clone -b apollo https://gitee.com/amoqi/docker-compose.git apollo
cd apollo
docker-compose up -d mysql

连接上刚初始化后的数据库ApolloConfigDB,表ServerConfig中的eureka.service.url,改为docker映射出来的外网地址

后续分步骤执行,看日志等待前一个执行好了再执行下一个,不要直接执行docker-compose up -d命令

docker-compose up -d apolloConfig
docker-compose up -d apolloAdmin
docker-compose up -d apolloPortal

查看日志方式docker-compose logs -f+服务名,例如

docker-compose logs -f mysql

执行完毕后