官网:home
简介:
Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
基本架构及概念
服务 (Service)
服务是指一个或一组软件功能(例如特定信息的检索或一组操作的执行),其目的是不同的客户端可以为不同的目的重用(例如通过跨进程的网络调用)。Nacos 支持主流的服务生态,如 Kubernetes Service、gRPC|Dubbo RPC Service 或者 Spring Cloud RESTful Service。
服务注册中心 (Service Registry)
服务注册中心,它是服务,其实例及元数据的数据库。服务实例在启动时注册到服务注册表,并在关闭时注销。服务和路由器的客户端查询服务注册表以查找服务的可用实例。服务注册中心可能会调用服务实例的健康检查 API 来验证它是否能够处理请求。
服务元数据 (Service Metadata)
服务元数据是指包括服务端点(endpoints)、服务标签、服务版本号、服务实例权重、路由规则、安全策略等描述服务的数据。
服务提供方 (Service Provider)
是指提供可复用和可调用服务的应用方。
服务消费方 (Service Consumer)
是指会发起对某个服务调用的应用方。
配置 (Configuration)
在系统开发过程中通常会将一些需要变更的参数、变量等从代码中分离出来独立管理,以独立的配置文件的形式存在。目的是让静态的系统工件或者交付物(如 WAR,JAR 包等)更好地和实际的物理运行环境进行适配。配置管理一般包含在系统部署的过程中,由系统管理员或者运维人员完成这个步骤。配置变更是调整系统运行时的行为的有效手段之一。
配置管理 (Configuration Management)
在数据中心中,系统中所有配置的编辑、存储、分发、变更管理、历史版本管理、变更审计等所有与配置相关的活动统称为配置管理。
名字服务 (Naming Service)
提供分布式系统中所有对象(Object)、实体(Entity)的“名字”到关联的元数据之间的映射管理服务,例如 ServiceName -> Endpoints Info, Distributed Lock Name -> Lock Owner/Status Info, DNS Domain Name -> IP List, 服务发现和 DNS 就是名字服务的2大场景。
配置服务 (Configuration Service)
在服务或者应用运行过程中,提供动态配置或者元数据以及配置管理的服务提供者。
Nacos Docker 快速开始
1、编写 docker-compse.yml 文件
version: '3.8'
services:
nacos:
image: nacos/nacos-server
container_name: nacos
privileged: true
restart: always
environment:
- PREFER_HOST_MODE=hostname
- MODE=standalone
- SPRING_DATASOURCE_PLATFORM=mysql
- MYSQL_SERVICE_HOST=172.19.32.1
- MYSQL_SERVICE_PORT=3306
- MYSQL_SERVICE_USER=root
- MYSQL_SERVICE_PASSWORD=051572
- MYSQL_SERVICE_DB_NAME=nacos_config
- MYSQL_DATABASE_NUM=1
- MYSQL_SERVICE_DB_PARAM=characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
- NACOS_AUTH_ENABLE=false
- NACOS_AUTH_TOKEN=SecretKey012345678901234567890123456789012345678901234567890123456789
- NACOS_AUTH_IDENTITY_KEY=serverIdentity
- NACOS_AUTH_IDENTITY_VALUE=security
- NACOS_AUTH_CACHE_ENABLE=true
volumes:
- D:/SoftWare/nacos/logs:/home/nacos/logs
ports:
- 8848:8848
- 9848:9848
ports: 端口号,nacos2.x版本后新增了grpc远程通信端口,需要放行9848端口
image:镜像,这里使用的是 nacos/nacos-server 镜像
container_name:容器名称
restart:重启,always表示重启
PREFER_HOST_MODE:支持IP还是域名模式,hostname/ip 默认 ip
MODE:系统启动方式: 集群/单机,cluster/standalone默认 cluster
SPRING_DATASOURCE_PLATFORM:单机模式下支持MYSQL数据库
MYSQL_SERVICE_HOST:数据库 连接地址(因docker容器内部无法直接访问宿主机ip,因此,并不能在容器中通过localhost:3306访问到宿主机的mysql;但是docker在运行时就建立了虚拟网卡,并命名为docker0 我们可以在宿主机上运行ifconfig看到它,这就是宿主机建立的网桥,用于与各个容器之间通信,我们可以通过虚拟网卡ip访问宿主机mysql)
MYSQL_SERVICE_PORT:数据库端口
MYSQL_SERVICE_USER:数据库用户名
MYSQL_SERVICE_PASSWORD:数据库用户密码
MYSQL_SERVICE_DB_NAME:数据库库名
MYSQL_DATABASE_NUM:数据库编号,默认1
MYSQL_SERVICE_DB_PARAM:数据库连接参数
NACOS_AUTH_ENABLE:是否开启权限系统
NACOS_AUTH_TOKEN:token
NACOS_AUTH_IDENTITY_KEY:nacos.core.auth.server.identity.key
NACOS_AUTH_IDENTITY_VALUE:nacos.core.auth.server.identity.value
NACOS_AUTH_CACHE_ENABLE:nacos.core.auth.caching.enabled
2、在 docker-compose.yml 文件目录下运行 docker-compose up -d
3、浏览器访问 localhost:8848/nacos,默认用户名/密码:nacos/nacos文章来源:https://www.toymoban.com/news/detail-709288.html
文章来源地址https://www.toymoban.com/news/detail-709288.html
到了这里,关于Docker Nacos 配置mysql的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!