Docker下,两分钟极速体验Nacos配置中心

2023-10-15 08:10

本文主要是介绍Docker下,两分钟极速体验Nacos配置中心,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文是《Spring Cloud Alibaba实战系列》的第三篇文章,本章我们一起来快速体验Naocs的动态配置服务;

系列文章链接

下面是《Spring Cloud Alibaba实战系列》的所有文章地址:

  1. 《Docker下,两分钟极速体验Nacos》;
  2. 《Docker下的Nacos环境开发》;
  3. 《Docker下,两分钟极速体验Nacos配置中心》;
  4. 《Docker下Nacos配置应用开发》;

关于Nacos的动态配置服务

动态配置服务可以让您以中心化、外部化和动态化的方式管理所有环境的应用配置和服务配置,Nacos 提供了一个简洁易用的UI 帮助您管理所有的服务和应用的配置。

环境

本次实战的环境和版本信息如下,您需要准备好docker和docker-compose:

  1. 操作系统:CentOS Linux release 7.6.1810
  2. Docker:1.13.1, build b2f74b2/1.13.1
  3. docker-compose:1.24.1, build 4667896

环境准备好了就可以开始体验Nacos的配置服务了

体验内容简介

  1. 本次体验部署两个应用:Naocs server和名为config-demo的应用,该应用提供一个web接口,返回内容来自从Nacos获取的配置文件;
  2. 先不在Naocs上配置任何信息,调用config-demo的web接口返回的是代码中写的默认值;
  3. 在Naocs上增加一个配置项,让config-demo能读取到该配置,再调用此web接口时返回的就是Naocs的配置项的内容;
  4. 在Nacos上修改配置项的值,再次访问config-demo的web接口,看刚才修改的配置项能否在config-demo上立即生效;

极速体验

  1. 执行以下命令即可完成部署,包括Nacos server、从Nacos获取配置的demo应用:
wget https://raw.githubusercontent.com/zq2599/blog_demos/master/nacosdemo/dockerfiles/config/docker-compose.yml && \
docker-compose up -d
  1. 控制台提示如下所示,docker-compose.yml文件下载成功后顺利启动里面编排的容器:nacos和config-demo:
[root@maven 18]# wget https://raw.githubusercontent.com/zq2599/blog_demos/master/nacosdemo/dockerfiles/config/docker-compose.yml && \
> docker-compose up -d
--2019-08-18 23:30:08--  https://raw.githubusercontent.com/zq2599/blog_demos/master/nacosdemo/dockerfiles/config/docker-compose.yml
正在解析主机 raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.0.133, 151.101.64.133, 151.101.128.133, ...
正在连接 raw.githubusercontent.com (raw.githubusercontent.com)|151.101.0.133|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:343 [text/plain]
正在保存至: “docker-compose.yml”100%[==============================================================================>] 343         --.-K/s 用时 0s      2019-08-18 23:30:09 (64.6 MB/s) - 已保存 “docker-compose.yml” [343/343])Creating network "18_default" with the default driver
Creating nacos ... done
Creating config-demo ... done
[root@maven 18]# docker ps
CONTAINER ID        IMAGE                                        COMMAND                  CREATED             STATUS              PORTS                    NAMES
f2b9d7358482        bolingcavalry/nacosconfigdemo:1.0-SNAPSHOT   "java -Xms1g -Xmx1..."   7 seconds ago       Up 7 seconds        0.0.0.0:8080->8080/tcp   config-demo
65487f271bc6        bolingcavalry/nacosserver:0.0.1              "/docker-entrypoin..."   8 seconds ago       Up 7 seconds        0.0.0.0:8848->8848/tcp   nacos
  1. 我这里宿主机的IP是192.168.121.131,因此通过该地址访问config-demo的web接口:http://192.168.121.131:8080/test ,返回内容如下图所示,desc from code是程序获取不到Nacos配置时返回的默认值:
    在这里插入图片描述
  2. 接下来登录Nacos的web页面,创建config-demo所需的配置项,地址是:http://192.168.121.131:8848/nacos ,用户名和密码都是nacos
  3. 如下图,新增一个配置项:
    在这里插入图片描述
  4. 接下来进入一个表单页面,要填写的每个字段内容如下所示:
字段名称字段值
Data IDmy-nacos-config.yaml
GroupBOLING_CAVALRY
配置格式YAML

最后一个字段是配置内容,值如下:

bolingcavalry:desc: desc from nacos yaml config

整个表单的内如下图所示:
在这里插入图片描述
7. 点击右下角的发布按钮提交表单,即可创建一个新的配置:
在这里插入图片描述
8. 再次访问config-demo的web接口,返回的内容如下图,正是我们刚才在Nacos上配置的,表明应用已成功从Nacos上获取到配置:
在这里插入图片描述
9. 再修改一下配置,看看应用能否立即获取到新的配置数据,在配置列表中找到刚刚新增的配置,点击下图红框2中的"编辑"按钮:
在这里插入图片描述
10. 修改下图红框中的内容,我这里是在末尾加了个 v2,修改完毕后点击右下角的发布按钮,使得配置生效:
在这里插入图片描述
11. 再次访问config-demo的web接口,返回的内容已经带有 v2,如下图,表明刚才修改的配置已立即被应用获取:
在这里插入图片描述
至此,Nacos的配置中心服务体验完成,我们对该服务已经有了基本的认识了解,接下来的文章我们会一起学习config-demo的开发过程,了解使用Nacos配置服务的细节。

欢迎关注我的公众号:程序员欣宸

在这里插入图片描述

这篇关于Docker下,两分钟极速体验Nacos配置中心的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/216478

相关文章

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

SpringBoot+RustFS 实现文件切片极速上传的实例代码

《SpringBoot+RustFS实现文件切片极速上传的实例代码》本文介绍利用SpringBoot和RustFS构建高性能文件切片上传系统,实现大文件秒传、断点续传和分片上传等功能,具有一定的参考... 目录一、为什么选择 RustFS + SpringBoot?二、环境准备与部署2.1 安装 RustF

mybatis映射器配置小结

《mybatis映射器配置小结》本文详解MyBatis映射器配置,重点讲解字段映射的三种解决方案(别名、自动驼峰映射、resultMap),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定... 目录select中字段的映射问题使用SQL语句中的别名功能使用mapUnderscoreToCame

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

MySQL8 密码强度评估与配置详解

《MySQL8密码强度评估与配置详解》MySQL8默认启用密码强度插件,实施MEDIUM策略(长度8、含数字/字母/特殊字符),支持动态调整与配置文件设置,推荐使用STRONG策略并定期更新密码以提... 目录一、mysql 8 密码强度评估机制1.核心插件:validate_password2.密码策略级

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二