服务器之Apollo单机部署(快速安装)

部署Apollo

apollo单机部署(快速安装)

Apollo官网:https://www.apolloconfig.com/#/zh/deployment/quick-start-docker
官网单机部署的方式分为两种:普通部署和docker部署。

普通部署

需要安装 MySQLJava环境。
Apollo服务端共需要两个数据库: ApolloPortalDB(apollo页面)和 ApolloConfigDB(apollo使用的),把数据库、表的创建和样例数据都分别准备了 sql文件,只需要导入数据库即可。

服务器之Apollo单机部署(快速安装)
然后建立数据库连接,进入到快速包下面(apollo-quick-start),下面有 demo.sh,进行编辑:
将对应的数据库名和地址修改成自己的。
服务器之Apollo单机部署(快速安装)
在启动服务之前需要确认8070、8080、8090端口未被占用,然后直接启动 ./demo.sh
==== starting service ====
Service logging file is ./service/apollo-service.log
Started [10768]
Waiting for config service startup.......

Config service started. You may visit http://localhost:8080 for service status now!

Waiting for admin service startup....

Admin service started
==== starting portal ====
Portal logging file is ./portal/apollo-portal.log
Started [10846]
Waiting for portal startup......

Portal started. You can visit http://localhost:8070 now!

首先会启动 erueka服务,然后启动 portal 配置中心,最后访问 [http://服务器外网地址:8070](http://服务器外网地址:8070)即可;账号:apollo,密码:admin;具体如下图所示:

服务器之Apollo单机部署(快速安装)
服务器之Apollo单机部署(快速安装)

docker部署

基于上述环境,我们暂停 demo.sh的执行: ./demo.sh stop,在快速包中(apollo-quick-start)使用 docker-compose up运行;

服务器之Apollo单机部署(快速安装)

SpringBoot集成Apollo

这一步就是个坑😂,创建 SpringBoot不多说,在 maven仓库找到客户端;

服务器之Apollo单机部署(快速安装)
取最新版即可(截至2022年10月21日):

    com.ctrip.framework.apollo
    apollo-client
    2.0.1

错误配置:

server:
  port: 8000
app:
  id: apolloTest
apollo:
  bootstrap:
    enabled: true
  meta: http://服务器外网地址:8080

在启动类上开启 apollo: @EnableApolloConfig

@SpringBootApplication
@EnableApolloConfig
public class ApolloTestApplication {

    public static void main(String[] args) {
        SpringApplication.run(ApolloTestApplication.class, args);
    }

}

服务器部署的 Apollo会有问题,客户端请求的时候地址会出现 服务器的内网地址,那肯定是访问不到的。

服务器之Apollo单机部署(快速安装)
所以我们进行以下设置:
指定应用的 AppId
app.id=apolloTest

在服务启动设置上配置 apollo参数;

-Dapollo.configService=http://服务器外网地址:8080

服务器之Apollo单机部署(快速安装)
需要对应起来,新增配置key:service,value:hello world,并且是已发布
服务器之Apollo单机部署(快速安装)
public class TestController {

    @Value(value = "${service}")
    private String name;

    @RequestMapping("test")
    public String test(){
        return "hello world -->"+name;
    }
}

Original: https://www.cnblogs.com/xbhog/p/16812650.html
Author: xbhog
Title: 服务器之Apollo单机部署(快速安装)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/800477/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • [Pandas技巧] 筛选和删除目标值所在的行

    美图欣赏2022/06/21 1.筛选出目标值所在行 单列筛选 df[列名].isin([目标值])对当前列中存在目标值的行会返回True,不存在的返回False df[df[列名…

    Python 2023年8月8日
    042
  • pytest+allure:关于allure框架的使用(一)

    1. 指定测试报告的存储路径 例:–alluredir=report/allure_report(给收集测试报告指定储存路径) 例:pytest test_allure…

    Python 2023年9月12日
    076
  • python模拟投掷色子并做出数据可视化统计图

    这里讲解模拟掷色子,并实现数据可视化的操作。数据可视化可以帮助我们更好地分析相关的统计结果,获得更为直观的统计图,帮组我们更好的处理一些事情。可视化的终极目标是洞悉蕴含在数据中的现…

    Python 2023年8月26日
    061
  • 基于MATLAB的加噪语音信号的滤波

    MATLAB数字滤波器实现GUI界面设计 一.滤波器的简述 在MATLAB环境下IIR数字滤波器和FIR数字滤波器的设计方 法即实现方法,并进行图形用户界面设计,以显示所介绍迷你滤…

    Python 2023年9月27日
    047
  • Python 有序数列二分查找法

    #二分查找法: 二进制搜索是一种在有序数组中查找特定元素的搜索算法。 [En] Binary search is a search algorithm for finding a …

    Python 2023年5月25日
    076
  • Pytest 源码分析

    测试脚本 test_demo.py import pytest class TestDemo(): def test_01(self): print 111111 def test…

    Python 2023年9月10日
    044
  • conda修改默认环境配置及Jupyter Notebook下载和保存默认路径(笔记用)

    C:\Users\你的用户名这个位置有个.condarc文件用记事本打开,加上: envs_dirs: D:\Conda_data\envs C:\Users\你的用户名\AppD…

    Python 2023年9月8日
    053
  • 数据分析5–多层索引与分组聚合

    一、多层索引 MultiIndex,即具有多个层次的索引,有些类似于根据索引进行分组的形式。通过多层次索引,我们就可以使用高层次的索引,来操作整个索引组的数据。多层索引的创建方式第…

    Python 2023年8月21日
    052
  • Python:朋友圈配图,我承包了

    Original: https://www.cnblogs.com/123456feng/p/16076916.htmlAuthor: 蚂蚁ailingTitle: Python:…

    Python 2023年11月9日
    038
  • numpy刷题——02

    💰干货在最后总结哦💰 自我介绍 我是深圳大学大三的一名大学生,未来想要从事数据分析的工作 从今天开始学习python相关库 第一步是学习numpy!!! 每天一节,加油! 这篇文章…

    Python 2023年8月28日
    051
  • English Learning – Day16 作业打卡 2022.12.22 周四

    作业分析四步走: 口语粉碎机# L1-Day16 打卡时间:12.22 日周四(6:00-17:00) 【学号】:28XXX 1. 当我看见他们时,他们不说话了。 我的答案:I s…

    Python 2023年9月29日
    044
  • selenium+pytest——失败用例重试

    selenium+pytest——失败用例重试 一、目的 在我们使用selenium+pytest做UI自动化的时候偶尔会遇到因为特殊情况比如浏览器加载失败、网络波动等等导致用例运…

    Python 2023年9月9日
    053
  • 前端年终总结

    前言 从未写过年度总结,恰逢今年是变化较大的一年,所以需要有一个总结仪式。同时希望在未来的每一年都能有一次年度总结,看看当前走过的路,也回望以往的不足。毕竟,前端一世,草木一秋。 …

    Python 2023年11月3日
    042
  • scrapy 中间件(Middleware)

    中间件(Middleware) scrapy的中间件是一个重要概念,作用在于批量拦截请求和响应。scrapy中有2种中间件,爬虫中间件(Spider Middleware)和下载中…

    Python 2023年10月4日
    042
  • plot参数详解python_matplotlib.pyplot.plot()参数详解

    在交互环境中查看帮助文档: import matplotlib.pyplot as plt help(plt.plot) 以下是对帮助文档重要部分的翻译: plot函数的一般的调用…

    Python 2023年9月2日
    054
  • python播放器模块_如何在单独的模块中调用播放器

    我最近实施了一个敌人,该敌人会定期在屏幕上的指定点射击。但是,在尝试使玩家适应这一点时,它拒绝工作。由于敌人类别是在房间模块中定义的,然后在主游戏模块中定义的,因此我不确定如何在敌…

    Python 2023年9月24日
    043
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球